如何将多个文本框绑定到自定义项(C#,winforms)中字典中的特定项

如何将多个文本框绑定到自定义项(C#,winforms)中字典中的特定项,c#,winforms,data-binding,C#,Winforms,Data Binding,我有一个自定义类,其中有一个字典。我创建该类的实例,并为字典创建空白条目 我想用C#,windforms将一些文本框绑定到字典中的条目上。我见过类似的问题,但没有一个能完全解决我发现的这个问题 比如说, public class GasketDetails { public Dictionary<int, double> QminDict { get; set; } public GasketDetails() { QminDict = new

我有一个自定义类,其中有一个字典。我创建该类的实例,并为字典创建空白条目

我想用C#,windforms将一些文本框绑定到字典中的条目上。我见过类似的问题,但没有一个能完全解决我发现的这个问题

比如说,

public class GasketDetails
{
    public Dictionary<int, double> QminDict { get; set; }
    public GasketDetails()
    {
        QminDict = new Dictionary<int, double>();
        QminDict.Add(20,0);
        QminDict.Add(100,0);
    }
}



private void initTextBoxBinding()
    {
        ChosenGasket = new GasketDetails();
        tb20Qmin.DataBindings.Add(new Binding("Text", ???, ???));
        tb100Qmin.DataBindings.Add(new Binding("Text", ???, ???));
    }
公共类衬垫详细信息
{
公共字典QMindicate{get;set;}
公共垫圈详细信息()
{
qmdindicat=新字典();
质量指标加(20,0);
质量指标加(100,0);
}
}
私有void initTextBoxBinding()
{
Chosen垫片=新垫片详图();
tb20Qmin.DataBindings.Add(新绑定(“文本”)、??、??);
tb100Qmin.数据绑定.Add(新绑定(“文本”)、??、??);
}

您想要双向绑定吗?不,这并不重要。我只需要从文本框中更新字典。我不会更改字典,然后希望文本框更新。不过,我有时会通过编程更改文本框,希望它也能更新字典,而不仅仅是在用户输入数据时。不要使用绑定。数据绑定在正确的上下文中非常有用。这不是正确的上下文。只需编写代码来来回移动数据。如果您决定绑定,则可以重新定义该
GasketDetails
类,使其绑定友好,或者创建另一个类,该类是可以传递数据的。但是,如果您选择第二种方法,您仍然会编写额外的代码,因此,除非您想重用它,否则这并不值得。@jmchiliney是对的。如果希望使用数据绑定,则需要创建实现
INotifyPropertyChanged
接口的
ViewModel
类。然后在viewmodel中,您可以为字典的每个项创建自己的属性,并将它们绑定到文本框