从XAML中的另一个源文件引用click方法?

时间:2017-12-04 21:11:04

标签: c# xaml uwp

我有一个分配了点击方法的按钮。我想将该方法移动到另一个CS文件,以便我可以在其他地方重复使用它。在XAML中是否可以从Pages源文件之外的CS源文件中引用方法,单击方法?

<Button x:Name="TheRedButton" Click="DoNotPressTheRedButton_Click" />

我想在另一个源文件中找到DoNotPressTheRedButton_Click

ButtonMethods.cs

然后在我的XAML页面中使用它

MyPage.xaml

为了做到这一点,我需要在XAML中写什么?

我以为我需要:

xmlns:helpermethods="using:CoreProject.HelperMethods"

然后,

<Button x:Name="TheRedButton" Click="helpermethods:ButtonMethods.DoNotPressTheRedButton_Click" />

但我收到编译错误...... CS1002和CS1513。显然,这不是正确的语法。这甚至可能吗?

2 个答案:

答案 0 :(得分:3)

容易腻:

    pTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    pTable.getColumnModel().getColumn(0).setPreferredWidth(120);
    pTable.getColumnModel().getColumn(1).setPreferredWidth(100);

或者在WPF中:

<Button Click="{x:Bind helpermethods:ButtonMethods.ButtonClick}" />

C#:

<Button Click="{x:Static helpermethods:ButtonMethods.ButtonClick}" />

答案 1 :(得分:1)

您可以通过ButtonMethods的点击处理程序在TheRedButton中调用您的方法。

像这样:

private void OnSomebodyClickedTheRedButtonWhenTheyWereNotMeantTo(object sender, RoutedEventArgs args)
{
    // do some other stuff with sender - find out which button was clicked, etc.

    ButtonMethods.RedButtonClicked(sender, args);
}

这样你就可以做其他事情&#34;您可能需要在此类中使用此事件处理程序(如果您愿意)。

确保您的方法为static,否则您每次都需要(不必要地)创建ButtonMethods类的实例。