안녕하세요, 제 버튼이 실행되는 곳의 코드 뒤에 여러 버튼과 클릭 이벤트를 동적으로 추가하고 싶습니다. System.Diagnostics.Process.Start(targetURL);
어떻게해야합니까?여러 버튼과 클릭 이벤트를 C# 코드에서 동적으로 추가하는 방법은 무엇입니까?
1
A
답변
4
단추를 만들고 속성 및 이벤트 처리기를 설정 한 다음 양식의 Controls
컬렉션에 추가하면됩니다.
var button = new Button();
try
{
button.Text = "Button 1";
button.Click += (sender, e) => System.Diagnostics.Process.Start(targetURL);
//Or if you don't want to use a lambda and would rather have a method;
//button.Click += MyButton_Click;
Controls.Add(button);
}
catch
{
button.Dispose();
throw;
}
//Only needed when not using a lambda;
void MyButton_Click(Object sender, EventArgs e)
{
System.Diagnostics.Process.Start(targetURL);
}
2
당신은 양식의 Controls
컬렉션에 원하는 컨트롤을 추가 할 수 있습니다 :
var targetURL = // ...
try
{
SuspendLayout();
for (int i = 0; i < 10; i++)
{
var button = new Button();
button.Text = String.Format("Button {0}", i);
button.Location = new Point(0, i * 25);
button.Click += (object sender, EventArgs e) => System.Diagnostics.Process.Start(targetURL);
this.Controls.Add(button);
}
}
finally
{
ResumeLayout();
}
부모 컨트롤에 여러 컨트롤을 추가, 당신이를 초기화하기 전에 SuspendLayout
메소드를 호출하는 것이 좋습니다 추가 할 컨트롤. 컨트롤을 부모 컨트롤에 추가 한 후 ResumeLayout
메서드를 호출하십시오. 이렇게하면 많은 컨트롤이있는 응용 프로그램의 성능이 향상됩니다.
2
버튼 변수를 선언하십시오.
이벤트 처리기 추가
컨트롤 속성 속성에 추가하십시오.
이익
당신은 텍스트 상자 "txbURL"버튼 "btnNavigateToURL"를 포함하는 사용자 정의 컨트롤을 작성하고 코드 (System.Diagnostics.Process.Start를 실행하려면 버튼의 이벤트 핸들러를 작성할 수
2
(TargetURL이);)
일단 작업을 완료하면 런타임에 양식에 컨트롤을 추가하고 다음과 같은 코드를 작성하는 것이 쉽습니다 (지금은 # 편집기가 없으므로 코드를 확인해야 할 수도 있음).)
MyControlClassName userControl = new MyControlClassName(string targetUrl);
userControl.Parent = yourForm;
yourForm.Controls.Add(userControl);
그게 전부입니다.
관련 문제
- 1. 클래스 이름별로 클릭 이벤트를 추가하는 방법은 무엇입니까?
- 2. 동적으로 추가 된 DropDownList의 ListItem에 OnClick 이벤트를 추가하는 방법은 무엇입니까?
- 3. 코드에서 작성된 텍스트 상자에 클릭 이벤트를 추가하는 방법
- 4. 버튼과 "삭제"이벤트를 연결하는 방법은 무엇입니까?
- 5. 클릭 된 자식 뷰의 ID를 LinearLayout에 동적으로 추가하는 방법은 무엇입니까?
- 6. 자바 버튼과 키보드 클릭 듣기
- 7. 클릭 이벤트를 삭제하는 방법은 무엇입니까?
- 8. 클릭 이벤트를 BitmapField (fieldchangeListener)에 추가하는 방법은 무엇입니까?
- 9. C# 코드에서 WPF 버튼 클릭
- 10. WPF에서 메뉴 항목 이벤트를 추가하는 방법은 무엇입니까?
- 11. 클릭 이벤트에서 버튼에 사운드를 추가하는 방법은 무엇입니까?
- 12. JavaScript - 특정 값을 동적으로 전달하는 onclick 이벤트를 추가하는 방법은 무엇입니까?
- 13. jQuery를 사용하여 사용자 정의 이벤트를 동적으로 추가하는 방법은 무엇입니까?
- 14. 동적으로 wpf에서 이벤트를 추가하고 제거하는 방법은 무엇입니까?
- 15. 여러 값을 추가하는 방법은 무엇입니까?
- 16. C# 코드로 만든 버튼의 클릭 이벤트를 메서드와 연관시키는 방법은 무엇입니까?
- 17. Click 이벤트를 코드 뒤에있는 타원에 추가하는 방법은 무엇입니까?
- 18. 마우스 업 이벤트를 추가하는 방법은 무엇입니까?
- 19. TextBlock을 클릭하면 이벤트를 추가하는 방법은 무엇입니까?
- 20. jQuery 라이브 클릭 이벤트를 가로채는 방법은 무엇입니까?
- 21. div 뒤에 코드에서 클릭 이벤트를 어떻게 추가합니까?
- 22. 동일한 필드의 여러 필드에 이벤트를 추가하는 방법
- 23. iphone/ipad 앱에서 iPhone 캘린더에 여러 이벤트를 추가하는 방법은 무엇입니까?
- 24. listbox의 textblock에 click 이벤트를 추가하는 방법은 무엇입니까?
- 25. jQuery에서 클릭 이벤트를 발생시키는 방법은 무엇입니까?
- 26. 버튼과 requirefieldvalidator가있는 동적으로 생성 된 테이블 C#
- 27. jQuery - DOM에 요소를 동적으로 추가하는 방법은 무엇입니까?
- 28. 새 맞춤 단추를 동적으로 추가하는 방법은 무엇입니까?
- 29. Silverlight에서 DefinitionSeries를 StackedAreaChart에 동적으로 추가하는 방법은 무엇입니까?
- 30. Android에서 오른쪽에서보기를 동적으로 추가하는 방법은 무엇입니까?
좋은 답변을위한 thx – Karamafrooz