Si8*_*Si8 1 c# events winforms
我有一个文本框,它是只读的.当我点击我希望它来调用我的按钮点击事件:
private void tbFile_Click(object sender, EventArgs e)
{
//btnBrowse_Click(sender, e);
MessageBox.Show("test");
}
Run Code Online (Sandbox Code Playgroud)
单击文本框时,没有任何反应.我如何解决它?
更新:
private void btnBrowse_Click(object sender, EventArgs e)
{
openFile();
}
private void tbFile_Click(object sender, EventArgs e)
{
//btnBrowse_Click(sender, e);
if (tbFile.Text != "")
{
openFile();
}
}
public void openFile()
{
var FD = new System.Windows.Forms.OpenFileDialog();
FD.Filter = "DBF Files|*.DBF";
FD.InitialDirectory = @"C:\";
if (FD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string fileToOpen = FD.FileName;
tbFile.Text = fileToOpen;
}
}
Run Code Online (Sandbox Code Playgroud)
当我点击浏览按钮并选择一个文件时,浏览文件窗口再次出现.所以现在它出现了两次,文本框点击仍然不起作用.
没有理由可以从您提供的信息中推断出为什么在单击tbFile控件时不应该触发openFile()方法.
将文本框设置为只读的事实不会阻止它以任何方式引发click事件.
唯一的可能性是该方法未分配给控件的click事件.
确保在控件的事件属性中确实将click事件分配给"tbFile_Click"方法.
只是因为存在一个被称为与控件相同但添加了"_Click"的方法并不会使它被执行,除非您明确告诉c#您想要将该方法与控件的click事件相关联.
通过事件窗口分配方法时,C#会在后台生成一个代码文件,用于将回调添加到该特定事件.
| 归档时间: |
|
| 查看次数: |
4151 次 |
| 最近记录: |