3 предложения для увольнения События TextChanged:
Вручную изменяют текст:
string s = dateTimePicker1.Text;
dateTimePicker1.Text = String.Empty;
dateTimePicker1.Text = s;
или
Наследовались DateTimePicker и создают новый метод, который выставляет / называет защищенный OnTextChanged
public class MyDateTimePicker : DateTimePicker
{
public void OnTextChanged(EventArgs e)
{
base.OnTextChanged(e);
}
}
DateTimePicker или
, Если Вы не любите ООП и хотите повредить инкапсуляцию, можно получить доступ к защищенному методу OnTextChanged посредством отражения:
MethodInfo onTextChanged = dateTimePicker1.GetType().GetMethod("OnTextChanged", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
onTextChanged.Invoke(dateTimePicker1, new object[] { new EventArgs() });
Можно наследоваться тому классу и создать новый метод, который называет защищенный OnSomeEvent () методом.
class MyButton : Button
{
public void CauseClick()
{
this.OnClick();
}
}
Как Матовые указанный, можно использовать PerformClick () для этого определенного примера. Однако большинство событий не имеет соответствующих государственных функций для инициирования их.
Кнопка в Windows Forms является особым случаем, потому что это имеет метод PerformClick , чтобы сделать точно, о чем Вы говорите. Для других событий в других средствах управления, тем не менее, нет действительно ничего подобного.