Если бы посмотреть здесь и найти несколько примеров, но они, похоже, не соответствуют моей точной проблеме, и с помощью экспериментов я не могу это исправить.Вызвать мой метод форм из моего пользовательского элемента управления в моем другом настраиваемом элементе управления
Текущий код формы ...
public partial class Form1 : Form
{
DualCombo dc = new DualCombo();
public Form1()
{
InitializeComponent();
this.Controls.Add(dc);
}
private void MyMethod()
{
MessageBox.Show(dc.c1.Text + dc.c2.Text);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
управления, который содержит 2 моих пользовательских комбо ...
public class DualCombo : UserControl
{
public CustomCombo c1 = new CustomCombo();
public CustomCombo c2 = new CustomCombo();
public DualCombo()
{
c1.Items.Add("One");
c1.Items.Add("Two");
c1.Items.Add("Three");
c2.Left = c1.Right;
c2.Items.Add("One");
c2.Items.Add("Two");
c2.Items.Add("Three");
this.Controls.Add(c1);
this.Controls.Add(c2);
}
}
Я покинул код из пользовательского комбо пустым, чтобы сохранить Пример простой ...
public class CustomCombo : ComboBox
{
}
Я бы хотел, чтобы моя пользовательская комбинация OnSelectedIndex изменилась, чтобы вызвать следующее: ThOD то есть в форме ...
private void MyMethod()
{
MessageBox.Show(dc.c1.Text + dc.c2.Text);
}
Спасибо за подробный ответ. Однако я не вижу OnSomeEvent в текущем контексте. – user3755946
Где вы? Возможно, вы написали по ошибке 'dc.OnSomeEvent + = ...' (должно быть 'dc.SomeEvent + = ...')? – Sinatr
он находится в двойной комбинации c1.SelectedIndexChanged + = (s, e) => OnSomeEvent(); – user3755946