方法绑定 - 如果Method在另一个类/命名空间中怎么办?

时间:2016-06-23 12:38:35

标签: wpf xaml namespaces

我们说我的XAML中有以下ComboBox:

<ComboBox x:Name="cmbOinkOink" Loaded="cmbOinkOink_Loaded" />

我在这里深入了解了我的cmbOinkOink_Loaded方法:

namespace PiggyWPF.Classes.EventHandler
{

    class ComboBoxEventHandler
    {

        public void cmbOinkOink_Loaded(object sender, RoutedEventArgs e)
        {
            // Do Stuff...
        }
    }

}

我怎么告诉XAML在PiggyWPF.Classes.EventHandler.ComboBoxEventHandler下找到cmbOinkOink_Loaded?

3 个答案:

答案 0 :(得分:0)

我不确定是否有直接的方法可以从xaml实现此行为。 但你可以从后面的代码轻松地做到这一点。

<style>
    div.testy {
        border:1px solid black;
    }

    div.testy:hover {
        background-color:red;
    }
</style>

答案 1 :(得分:0)

您必须通过以下方式转发方法调用,方法是通过定义ComboBox的XAML后面的代码,或者使用例如来自Interactivity的ExecuteCommandAction,要求您在原始类中提供command而不仅仅是方法,理想情况下是静态的,或者可以轻松访问,因此您可以使用x:Static或类似的东西行动的XAML。

答案 2 :(得分:0)

(代表OP发布)。

我想我唯一的办法是将以下代码添加到我的主类:

private void cmbOinkOink_Loaded(object sender, RoutedEventArgs e)
    {
        using (ComboBoxEventHandler cmbEvent = new ComboBoxEventHandler())
        {
            cmbEvent.cmbOinkOink_Loaded(ref sender, e);
        }
    }