所以我在一个按钮内部有一个函数,我想在应用程序启动时立即触发,我这样做:
public partial class App : Application
{
private void App_OnStartup(object sender, StartupEventArgs e)
{
//get button reference
Button btn = ((MainWindow)Current.MainWindow).btnJSON;
//programmatically simulate button click
ButtonAutomationPeer peer =
new ButtonAutomationPeer(btn);
IInvokeProvider invokeProv =
peer.GetPattern(PatternInterface.Invoke)
as IInvokeProvider;
invokeProv.Invoke();
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这导致了一个nullReferenceExeption.我如何实现这一点,即在App stratup上调用功能或模拟按钮点击?
这是按钮签名:
public void btnJSON_Click(object sender, RoutedEventArgs e)
{
...
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
小智 5
而不是尝试调用按钮单击,只需调用按钮单击调用的方法.
public partial class App : Application
{
private void App_OnStartup(object sender, StartupEventArgs e)
{
((MainWindow)Current.MainWindow).DoStuff();
}
}
Run Code Online (Sandbox Code Playgroud)
在MainWindow.xaml.cs中:
public void DoStuff()
{
// TODO: Do Stuff
}
Run Code Online (Sandbox Code Playgroud)
只需按下按钮单击处理程序即可调用该方法.
public void btnJSON_Click(object sender, RoutedEventArgs e)
{
DoStuff();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
156 次 |
| 最近记录: |