C# 将哈希表(System.Collection)的键和值映射到自定义属性
我有一个哈希表(System.Collection)和一个自定义属性 默认值“_sendToDb”应该为false,稍后我将在wpf程序的网格中对此进行更改 这就是我所拥有的: 我的哈希表:C# 将哈希表(System.Collection)的键和值映射到自定义属性,c#,wpf,data-binding,mapping,C#,Wpf,Data Binding,Mapping,我有一个哈希表(System.Collection)和一个自定义属性 默认值“_sendToDb”应该为false,稍后我将在wpf程序的网格中对此进行更改 这就是我所拥有的: 我的哈希表: Hashtable hsh = new Hashtable(); 我的财产: public class ImagesFromFS : INotifyPropertyChanged { string _value; string _path; bool _sendToDb;
Hashtable hsh = new Hashtable();
我的财产:
public class ImagesFromFS : INotifyPropertyChanged
{
string _value;
string _path;
bool _sendToDb;
...
public string Path
{
get
{
return _path;
}
set
{
_path = value;
onPropertyChanged();
}
}
public bool SendToDb
{
get
{
return _sendToDb;
}
set
{
onPropertyChanged();
_sendToDb = value;
}
}
public string Value
{
get
{
return _value;
}
set
{
_value = value;
}
}
}
最终的目标应该是,将新创建的属性绑定到gridView。为此,您应该使用转换器。根据传递给它的值返回路径 下面是一个基本转换器的演示,可以根据您的需要进行修改。它有Convert和ConvertBack两种方法。希望能有所帮助。:)
我不明白这个问题。你在哈希表中放了什么?为什么您要引用标题中同时包含键和值的哈希表?(它们只有值)。从2006年.NET 2.0问世时起,您应该使用
字典,而不是哈希表。@Atoms不,它们既有键又有值。@Servy Bah,完全把自己和哈希集搞混了。
public class StatusConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
switch ((int)value)
{
case 1:
return "Raised";
case 2:
return "Work in Progress";
case 3:
return "Resolved";
case 4:
return "Closed";
default:
return "undefined";
}
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
switch (value.ToString())
{
case "Raised":
return 1;
case "Work in Progress":
return 2;
case "Resolved":
return 3;
case "Closed":
return 4;
default:
return 0;
}
}
}