C# 多个对象的数据绑定属性

C# 多个对象的数据绑定属性,c#,data-binding,object,C#,Data Binding,Object,你好吗?我有个问题。例如,我想将多个对象绑定到一个文本框。假设我有一个包含许多任务的列表。每个任务都包含一个标题 public class Task { public string Title { get; set; } [...] } 现在我想在列表框中选择两个任务。如果两个任务的标题相同,我希望文本框显示标题。如果它们不同,则不应显示任何内容 如果用户更改了该值,则两个任务的标题都应更改为新值 到目前为止,我创建了一个绑定在XAML中的新属性“Title”。有两个问题 如果我设置网格的Da

你好吗?我有个问题。例如,我想将多个对象绑定到一个文本框。假设我有一个包含许多任务的列表。每个任务都包含一个标题

public class Task
{
public string Title { get; set; }
[...]
}
现在我想在列表框中选择两个任务。如果两个任务的标题相同,我希望文本框显示标题。如果它们不同,则不应显示任何内容

如果用户更改了该值,则两个任务的标题都应更改为新值

到目前为止,我创建了一个绑定在XAML中的新属性“Title”。有两个问题

  • 如果我设置网格的DataContext,程序只读取“Title”一次。如果将datacontext设置为null,然后再次设置为Task类,则它可以工作(尽管很难看)

  • 如果我更改标题,列表框中的标题不会立即更改。只有当列表框再次读取任务列表时,它才会正确显示

    public string Title
    {
        get
        {
            string title = Tasks[0].Title;
    
            for (int i = 1; i < Tasks.Count; i++)
            {
                if (title != Tasks[i].Title)
                    return "";
            }
    
            return title;
        }
        set
        {
            foreach (Task task in Tasks)
                task.Title = value;
        }
    }
    
    公共字符串标题
    {
    收到
    {
    字符串标题=任务[0]。标题;
    for(inti=1;i
  • 谢谢你的帮助

    问候 stfx

    使用。它的目的是实现支持多个绑定(多绑定对象)的转换器,以便可以绑定到多个任务