WPF 列表框绑定

2023-12-28

我有一个医生对象,它的属性之一是ObservableList的诊所。它被用在一个窗口中来显示医生的详细信息。我可以获取要绑定的各个属性TextBox and ComboBox控件,但我无法获取要绑定到我的诊所列表ListBox.

这是我的 xamlListBox:

<ListBox Height="318" 
 HorizontalAlignment="Left" 
 Margin="422,0,0,0" 
 Name="lbClinic" 
 VerticalAlignment="Top" 
 Width="158" 
 SelectedValue="{Binding ClinicID, Path=Clinics, Mode=TwoWay, 
                          UpdateSourceTrigger = PropertyChanged}"
 SelectedValuePath="ClinicID" 
 DisplayMemberPath="Name"
 ItemsSource="{Binding DataContext.ClinicList, 
                          ElementName = PhysicianInfoLookup, Mode = OneWay}" 
 SelectionMode="Multiple" />

列表框正确填充了 ClinicList 中的项目,ClinicList 是所有可能的诊所的列表。但是,我无法从要绑定的医生对象获取诊所列表,以便在列表框中选择它的项目。我还想走另一种方式,如果取消选择某个项目,医生对象中的 ObservableList 将相应更改。

如何将医生对象中的诊所 ObservableList 双向绑定到列表框中的诊所列表(诊所对象的 ObservableList)?

谢谢。


迈克,你的绑定几乎没有问题。 这是一个完整的示例,演示了执行(我认为)您所追求的操作的一种方法。

View:

<Page.Resources>
    <ViewModel:Physician x:Key="physician"/>
</Page.Resources>
<StackPanel DataContext="{StaticResource physician}" >
    <TextBlock Text="{Binding Name}" Background="Orange"/>
    <TextBlock Text="Works in:"/>
    <ListBox ItemsSource="{Binding Clinics}" 
             SelectedValue="{Binding SelectedClinicId}" 
             SelectedValuePath="Id" DisplayMemberPath="Name" />
</StackPanel>

查看型号:

public class Physician
{
    private int _selectedClinicId;

    public Physician()
    {
        Name = "Overpaid consultant";
        Clinics = new ObservableCollection<Clinic>
                      {
                          new Clinic {Id = 0, Name = "Out Patients"},
                          new Clinic {Id = 1, Name = "ENT"},
                          new Clinic {Id = 2, Name = "GE"},
                      };
    }

    public string Name { get; set; }
    public IEnumerable<Clinic> Clinics { get; private set; }

    public int SelectedClinicId
    {
        get { return _selectedClinicId; }
        set
        {
            if (value != _selectedClinicId)
            {
                Debug.WriteLine(string.Format("setting clinic to: {0}",value));
                _selectedClinicId = value;
            }
        }
    }
}

public class Clinic
{
    public int Id { get; set; }
    public string Name { get; set; }
}

请注意,对于读/写属性,您可能希望引发属性更改通知。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPF 列表框绑定 的相关文章

  • 集群():是否可以仅检查文件是否已锁定,而不实际获取锁定(如果没有)?

    我的用例如下 我有一个程序 它强制在任何给定时间只能运行它的一个实例 因此在启动时它总是尝试在标准位置获取锁定文件 并在该文件终止时终止已经被锁定 这一切都工作正常 但现在我想用一个新的命令行选项来增强程序 当指定该选项时 将导致程序只打印
  • 从服务器下载图像(cUrl,但接受建议)C++

    我试图通过从服务器 网站 下载图像来设置旋转背景图像 并尝试使用curl 来执行此操作 但是在执行此操作方面取得了0 成功 我的代码的 缩短的 版本如下 我没有收到错误 但是 如何 临时 保存该图像以将其显示为背景 是否有图像 类型变量 或
  • 地图类容器的专用功能

    我想要专门为矢量和地图之类的容器设计一个函数模板 对于向量 我可以像下面那样做 但我不知道如何才能有一个专门版本的函数 该函数仅用于像地图这样的容器 include
  • 处理器关联组 C#

    我使用的是 72 核的 Windows Server 2016 我看到有两组处理器 我的 net 应用程序将使用一个或其他组 我需要能够强制我的应用程序使用我选择的组 我看到下面的代码示例 但我无法使其工作 我可能传递了错误的变量 我希望应
  • 如何在 Google Mock 中使用可选参数来模拟方法?

    如何使用可选参数模拟方法谷歌模拟 例如 class A public void set enable bool enabled true class MockA public A MOCK METHOD1 set enable void b
  • 图片框、双击和单击事件

    我有一个奇怪的问题 我有一个图片框双击事件以及单击事件 问题是即使我双击该控件 也会引发单击事件 如果我禁用单击事件 则双击事件正在工作 这个问题已经在这里讨论过 https stackoverflow com questions 1830
  • 如何在单例类和未命名类之间进行选择?

    我会使用这样的单例 Singleton single Singleton instance single gt do it 我会使用这样的未命名类 single do it 我觉得单例模式除了具有可读的错误消息之外 与未命名的类相比没有任何
  • 使用c#在mac上启动外部进程

    我成功地使用 System Diagnostics Process Start 在 Windows 上启动我的外部单声道可执行文件 然而在mac上却失败了 我没有收到任何错误 只是什么也没发生 我尝试按以下方式进行操作 System Dia
  • 在编译输出中添加程序集绑定 (app.config)

    如果我编译应用程序 则会在输出中自动添加程序集绑定 具体的程序集绑定不在app config在 Visual Studio 中但在创建的应用程序配置中 有什么办法可以检查为什么会自动添加程序集绑定吗 选项AutoGenerateBindin
  • 我应该使用字节还是int?

    我记得曾在某处读到 即使您只需要字节 使用 Int32 更好 就性能而言 它 据说 仅适用于您不关心存储的情况 这是有效的吗 例如 我需要一个保存一周中某一天的变量 我是吗 int dayOfWeek or byte dayOfWeek E
  • 如何查看每秒更新的图表中的最后 10 个数据点?

    我有这个代码 private void timer Tick object sender EventArgs e timer Stop for int i 0 i lt TOTAL SENSORS i DateTime d DateTime
  • 大小为 k 的非连续子序列的最大值的最小值

    在开始之前 我希望这个问题不是重复的 我发现了几个类似的问题 但它们似乎都没有描述完全相同的问题 但如果它是重复的 我会很高兴看到一个解决方案 即使它与我的算法不同 我一直在尝试回答这个问题 https stackoverflow com
  • 向客户端发送状态码 500 时页面未呈现

    我有一个页面 通用处理程序 我想在该页面上向客户端返回状态代码 500 以指示出现问题 我这样做 Response StatusCode 500 Response StatusDescription Internal Server Erro
  • 为什么 C# 中的命名空间允许循环依赖?

    在 c 中 您可以在文件 a cs 其命名空间为 MyApp A 中拥有一条语句 using MyApp B 而文件 b cs 其名称空间为 MyApp B 已经包含该语句 using MyApp A 如果类似的依赖关系存在于不同的 dll
  • 为什么使用 .AsEnumerable() 而不是转换为 IEnumerable

    扩展方法之一IEnumerable
  • 在 OSX 上检测 Objective C 或 C++ 中的文件夹访问(如 fs_usage 命令)

    我正在 OSX 上开发实时病毒扫描程序 OSX 的命令行命令fs usage可以通过以下方式确定文件夹访问权限 并且只能以 root 用户身份运行 fs usage w f pathname grep Users Documents Use
  • TCP/IP 传输期间套接字数据损坏

    当我通过预连接的 TCP IP 套接字发送数据时 我发现数据已损坏 Example Station1 正在向 Station2 发送数据 我已经在发送之前 在 S1 和接收之后 在 S2 打印了数据 以下是消息 S1 发送的数据是ACKS2
  • 将“C# 友好类型”名称转换为实际类型:“int” => typeof(int)

    我想得到一个System Type给定一个string指定 原始 类型C 友好名称 基本上与 C 编译器读取 C 源代码时的方式相同 我觉得描述我所追求的最好方式是单元测试的形式 我希望存在一种通用技术 可以使以下所有断言通过 而不是尝试对
  • C# 使用 .Equals() 比较两个 double

    我使用 ReShaper 当我用 比较两个双精度值时 它建议我应该使用 Math 具有公差的 ABS 方法 看 https www jetbrains com help resharper 2016 2 CompareOfFloatsByE
  • 在派生类中访问基类变量

    class Program static void Main string args baseClass obj new baseClass obj intF 5 obj intS 4 child obj1 new child Consol

随机推荐

  • Rspec Rails 打印大量警告

    我正在使用 rspec rails 3 0 1 测试 Rails 4 1 0 应用程序 rspec 命令正在打印大量有关我在应用程序中使用的 gem 的警告 我在下面包含了部分输出 我想知道是否可以抑制这种情况 home indika Do
  • 列出从孩子到父母的分配

    我正在尝试这样做 List
  • 我可以拥有的最大“POST”大小是多少?

    很抱歉 如果这是一个重复的问题 但我找不到有关我的问题的任何实质性信息 目前 我有一个 Java GWT 应用程序 它调用部署在应用程序引擎上的 python 脚本 他们通过 REST 进行通信 那么 我可以发送到部署脚本的 Google
  • Geoviews:向分区统计图添加滑块

    我正在研究 GeoViews 我想知道我们是否可以有一个滑块作为 GeoViews 中的分区统计图的输入 我在 gdf 中有另一个变量 即年份 是否可以有一个滑块来显示年份的 Total Crimes Edit 添加了更多信息 gdf数据框
  • updateSelectInput 不更新 selectInput 的 input$id 值

    我正在开发一个用于教育目的的应用程序 该应用程序应该显示用户上传的数据图 用户被要求上传一个 csv 文件 然后从该文件中选择两个将被绘制的变量 我提供了两个可与repex一起使用的数据文件的代码 uniformData csv包含来自均匀
  • 让 jquery.load 在 HTML 加载之前发生

    我的文件中有一个引导导航栏 navbar html我将它加载到我的 HTML 页面中Jquery load 我的 HTML 页面底部有这个 and div div
  • SparkSQL DataFrame 跨分区排序

    我正在使用 Spark sql 对我的数据集运行查询 查询的结果非常小 但仍然是分区的 我想合并生成的 DataFrame 并按列对行进行排序 我试过 DataFrame result sparkSQLContext sql my sql
  • 从不同设备访问 Flask

    有没有办法生成特定的IP地址或制作flask的特定站点http 127 0 0 1 5000 http 127 0 0 1 5000 在本地运行的站点 用于从不同设备访问使用 Flask 制作的 Web 应用程序 因为默认情况下它在本地运行
  • 下载并在 jQuery 中打开文件

    我通过 aspx 页面下载文件并返回一个文件 HttpContext Current Response ContentType APPLICATION OCTET STREAM String Header Attachment Filena
  • 将数据从 csv 文件转换为“xts”对象

    我有 CSV 文件 其日期格式如下 2004 年 8 月 25 日 我想将其读取为 xts 对象 以便使用 quantmod 包中的函数 periodReturn 我可以使用以下文件来实现该功能吗 Symbol Series Date Pr
  • Webpack 开发服务器配置 - contentBase 在最新版本中不起作用

    当我将 webpack 升级到 4 0 0 beta 3 并运行时npx webpack serve我收到此错误 webpack cli Invalid configuration object Object has been initia
  • 为什么执行函数后实例变量没有丢失?

    通常 我希望函数变量在执行该函数后会丢失 在下面的例子中 我按照一些教程编写了一个单例 但它是有效的 有人可能会争辩说instances每次都应该再次为空singleton函数被调用 def singleton cls instances
  • 什么是 sqlite 的良好 OO C++ 包装器 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想为 sqlite 找到一个好的面向对象的 C 而不是 C 包装器 人们推荐什么 如果您有多个建议 请将它们放在单独的回复中以便投票 另
  • 如何将 Thunderbird Lightning 扩展“破解”为全彩色类别

    Note While I m not entirely sure if this be better asked on SuperUser I guess the fact that you probably will have to me
  • 将嵌套 Spark DataFrame 中的列提取为 scala 数组

    我有一个数据框myDf其中包含点对数组 即 x 和 y 坐标 它具有以下模式 myDf printSchema root pts array nullable true element struct containsNull true x
  • 如何将自定义函数应用于 PyTorch 矩阵中的特定列

    我有一个大小为 150 182 91 的张量 第一部分只是批量大小 而我感兴趣的矩阵是 182x91 的 我需要在 182x91 矩阵上分别为 50 个维度中的每个维度运行一个函数 我需要获得 182x91 矩阵的对角矩阵条带 我使用的函数
  • 在 Yii 中重定向到登录页面时出现软 404 错误

    我正在使用 Yii 1 1 17 我注意到在我的一些页面上 我希望注册用户能够查看我在 Google 网站管理员工具上收到的软 404 错误 例如 http www example com sell 当你去http www example
  • 将无符号字符数组转换为浮点数数组

    在 C 中将无符号字符数组转换为浮点数组的最佳方法是什么 我目前有一个 for 循环如下 for i 0 i lt len i float buff i float char buff i 我还需要反转该过程 即从 unsigned cha
  • C 预处理器与变量串联[重复]

    这个问题在这里已经有答案了 可能的重复 C 预处理器和串联 https stackoverflow com questions 1489932 c preprocessor and concatenation 是否可以连接一个C带有变量名的
  • WPF 列表框绑定

    我有一个医生对象 它的属性之一是ObservableList的诊所 它被用在一个窗口中来显示医生的详细信息 我可以获取要绑定的各个属性TextBox and ComboBox控件 但我无法获取要绑定到我的诊所列表ListBox 这是我的 x