将Listbox的SelectedItem绑定到一个UserControl中
说明:在很多时候,我们需要用一个ListBox显示集合数据,当用户选择集合中的某一项时,需要在另一个地方把这一项的详细数据显示出来,那我们可以利用UserControl来显示详情,重写UserControl.ContentTemplate即可。
<Grid><ListBox x:Name="List1"><ListBox.ItemsPanel><ItemsPanelTemplate><VirtualizingStackPanel Orientation="Horizontal"/></ItemsPanelTemplate></ListBox.ItemsPanel><ListBox.ItemTemplate><DataTemplate><Grid><Grid.RowDefinitions><RowDefinition Height="150"></RowDefinition><RowDefinition Height="150"></RowDefinition><RowDefinition></RowDefinition></Grid.RowDefinitions><TextBlock Text="{Binding RoomName}" Width="200" Height="100" Foreground="Black" Background="Red"></TextBlock><UserControl Grid.Row="1" x:Name="txt" Content="{Binding ElementName=lb,Path=SelectedItem,Mode=TwoWay}" Width="100" Height="100" Foreground="Black" Background="Red" HorizontalAlignment="Left" VerticalAlignment="Top"><UserControl.ContentTemplate><DataTemplate><TextBlock Text="{Binding StuName}"/></DataTemplate></UserControl.ContentTemplate></UserControl><Label Content="{Binding ElementName=lb,Path=SelectedItem}"/><ListBox x:Name="lb" Grid.Row="2" ItemsSource="{Binding students}"><ListBox.ItemsPanel><ItemsPanelTemplate><VirtualizingStackPanel Orientation="Horizontal"/></ItemsPanelTemplate></ListBox.ItemsPanel><ListBox.ItemTemplate><DataTemplate><ContentControl Content="{Binding StuId}" Tag="{Binding StuName}" Width="30" Height="30" x:Name="btn"></ContentControl></DataTemplate></ListBox.ItemTemplate></ListBox></Grid></DataTemplate></ListBox.ItemTemplate></ListBox></Grid>
将Listbox的SelectedItem绑定到一个UserControl中相关推荐
- ListBox和ComboBox绑定数据简单例子
1. 将集合数据绑定到ListBox和ComboBox控件,界面上显示某个属性的内容 //自定义了Person类(有Name,Age,Heigth等属性) List<Person> per ...
- winform 中listBox控件绑定list类型数据源,并设置DisplayMember
在WinForm中,您可以将ListBox控件绑定到List类型的数据源.为此,您需要将List数据源设置为ListBox的DataSource属性,然后设置ListBox的DisplayMember ...
- wpf listbox的selectedItem绑定在mouseup前一直处于选中状态
SelectedItem绑定应该监听的MouseDown事件. 可根据需要改用ListBox的MouseUp事件,替换SelectedItem绑定
- 动态DNS——本质上是IP变化,将任意变换的IP地址绑定给一个固定的二级域名。不管这个线路的IP地址怎样变化,因特网用户还是可以使用这个固定的域名 这样看的话,p2p可以用哇...
动态域名是因应网络远程访问的需要而产生的一项应用技术.因为没有固定IP,只能运用二级域名来应对经常变化的IP,动态域名的由来因此而产生. 它当前主要应用在:路由器.网络摄像机.带网络监控的硬盘录像机. ...
- Boost:bind绑定作为一个组合的测试程序
Boost:bind绑定作为一个组合的测试程序 实现功能 C++实现代码 实现功能 bind绑定作为一个组合的测试程序 C++实现代码 #include <boost/config.hpp> ...
- WPF中一个控件绑定另一个控件的属性
原文:WPF中一个控件绑定另一个控件的属性 如同一个Grid中的一个按钮根据另一个按钮的显示与否作出不同的响应: 绑定的时候通过ElementName来指定控件 <Grid Margin=&qu ...
- 两个组件绑定vuex中相同的状态值,但是一个组件改变的时候,另一个组件中的值同步改变了,但是页面没有更新
最近在做项目中,遇到了一个问题,就是两个组件绑定vuex中相同的状态值,但是一个组件改变的时候,另一个组件中的值同步改变了,但是页面没有更新,只有数组有这个问题.后来思路就是深度监听到数组改变后,再更 ...
- c++中把一个函数中的语句复制到另一个语句中报错_从底层看前端(十一)—— JavaScript语法:脚本,模块和函数体。...
这篇文章我们继续聊JavaScript语法. 在讲解具体的语法结构之前,先看看语法的一些基本规则. 脚本和模块 首先,JavaScript有两种源文件,一种叫脚本(script),一种叫做模块(mod ...
- [转]另一个SqlParameterCollection 中已包含 SqlParameter[解决方案]
本着代码重用,减少变量的创建,希望参数能够重复使用 DataBase db = new DataBase(); SqlParameter[] prams ={ db.MakeInPar ...
最新文章
- Unity的三种Interceptor
- OpenCV4 DNN模块 Python APIs
- Spring Cloud:使用Ribbon实现负载均衡详解(下)
- 大牛是怎么思考设计MySQL优化方案
- iptables的配置实例
- python 2x和python 3x的区别_python2x和3x区别
- 02-继承的本质-Objective-C基础
- peewee mysql_scrapy中利用peewee插入Mysql
- 转:一个较完整的关键字过滤解决方案
- ofo 押金被强制理财?黄章回应 OPPO 涉嫌抄袭;三星华为折叠手机重名 | 极客头条...
- 【2021牛客暑期多校训练营9】E Eyjafjalla (倍增,dfs序,主席树)
- day21-字节流和字符流
- UT斯达康互动电视UI界面设计大赛作品 求拍砖
- kettle设置mysql时区_kettle中通过 时间戳(timestamp)方式 来实现数据库的增量同步操作(一)...
- SwiftUI内功之如何设计Struct和Class不要和陌生人说话
- iOS进阶 - GCD总结
- bom成本分析模型_拆解苹果HomePod发现BoM成本高达248.4美元
- Vue+Vux实现登录
- windows功能_Windows新功能全在这,新系统确实强大!
- I Can See You 远程控制软件最新下载地址(含所有设计文档)