我有 WPF 列表框:
<ListBox Name="FileDownloads" SelectionMode="Extended">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Name="Url" Text="{Binding Url}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我喜欢使用以下代码通过名称绑定 ListBox 的功能:this.OneWayBind(ViewModel, vm => vm.DownloadManager.FileDownloads, v => v.FileDownloads.ItemsSource);
在代码隐藏中进行绑定有助于重构。
有没有办法使用代码隐藏将 Url texbox 绑定到列表框中?
有没有办法使用代码隐藏将 Url 文本框绑定到列表框中?
现在不行。您可以像现在一样使用 XAML 绑定,也可以将数据模板放入 UserControls 中。
对于这种稍微麻烦的方法来说,一个安慰是,如果您注册数据模板 UserControls 并实现IViewFor<TViewModel>
在他们:
Splat.Locator.CurrentMutable.Register(typeof(MyView), typeof(IViewFor<MyViewModel>));
然后,您可以将 ListBox 简单地编写为:
<ListBox Name="FileDownloads" SelectionMode="Extended" />
此行将自动为您连接一个 DataTemplate:
this.OneWayBind(ViewModel, vm => vm.DownloadManager.FileDownloads, v => v.FileDownloads.ItemsSource);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)