使用非静态UserControl而不用作对象

时间:2015-03-09 22:47:16

标签: c# wpf user-controls

由于我发现很难说出这个问题,所以这个问题会措辞笨拙。我的代码也有点乱,因为我还在学习C#,可能不应该直接进入WPF。这也可能是我没有通过谷歌找到解决方案的原因。总之...

我的程序有一个带搜索栏的菜单,带有一个tab-control,用于将程序分成几个部分,每个tab-item都有一个用户控件。用户控件用于保持主窗口的XAML清洁。这导致了我无法使用搜索栏的问题,因为它与UserControl分开。

由于用户控件中的方法不能是静态的,我只能考虑使用ClassName title GetItem newItem = new GetItem()创建它。这有效!除了在用户控件上没有显示任何内容的事实(而MessageBox向我显示数据存在),因为(我认为)我几乎为我在程序中显示的内容创建了一个新的用户控件将XAML与<local:user-control>一起使用。

我对数据绑定不太熟悉,但是我试图绑定标签没有成功,因为我认为通过使用绑定,标签将显示相同的数据。是这种情况,我刚刚实施错了吗?

另外,我想通过删除使用XAML显示的用户控件,而是在创建它之后以编程方式显示对象会起作用,但我更喜欢其他选择。

1 个答案:

答案 0 :(得分:0)

我发现获得我希望实现的效果的最简单方法就是这样。

我添加了<local:UserControl/>, 我只需要添加x:Name="InstanceName"来获取:

 <local:UserControl x:Name="InstanceName"/>

有了这个,我可以用{/ p>替换GetItem newItem = new GetItem();

 InstanceName.GetMethod();