使用非静态用户控件而不用作对象
本文关键字:作对 对象 用户 静态 控件 | 更新日期: 2024-11-05 10:30:34
这个问题的措辞会很尴尬,因为我发现很难用词来表达。我的代码也有点混乱,因为我仍在学习 C#,可能不应该深入研究 WPF。这可能也是我还没有找到谷歌解决方案的原因。无论如何。。。
我的程序有一个带搜索栏的菜单,带有一个将程序分成多个部分的选项卡控件,每个选项卡项都有一个用户控件。用户控件用于保持主窗口的 XAML 整洁。这导致了我无法使用搜索栏的问题,因为它与用户控件是分开的。
由于用户控件中的方法不能是静态的,我只能考虑使用 ClassName title GetItem newItem = new GetItem()
创建它。这行得通!除了用户控件上不会显示任何内容(而 MessageBox 向我显示数据存在)这一事实之外,因为(我认为)我几乎已经创建了一个新的用户控件,以使用 XAML 和 <local:user-control>
在程序上显示的内容。
我不太熟悉数据绑定,但我尝试绑定标签没有成功,因为我的印象是通过使用绑定,标签将显示相同的数据。是这样吗,我只是实施错了?
此外,我想通过删除使用 XAML 显示的用户控件,而是在将其创建为对象后以编程方式显示会起作用,但我更喜欢替代方案。
我发现获得我希望达到的效果的最简单方法是这个。
虽然我补充说:<local:UserControl/>
,我只需要添加x:Name="InstanceName"
即可获得:
<local:UserControl x:Name="InstanceName"/>
有了这个,我可以将GetItem newItem = new GetItem();
替换为:
InstanceName.GetMethod();