{A}
{S0}
简介
本文演示了两个简单的方法,使用单独的显示和ListBox控件和ComboBox控件的值。这些控制项目类型的对象实体。在这里,它是展示如何操纵,以获得所需的的结果。背景
几次,人来对我说,他们希望显示在ComboBox和选择一些价值,他们要检索的用户是不可见的的其他一些价值。我发现大多数初学者在这种情况下,面临麻烦。所以我想,为什么不把这个解决方案的代码项目,使初学者的用户可以解决这个常见问题。
基本思路
当一个对象被添加这些控件的项目,这些控件调用ToString()方法显示。事实上,当一个对象为项目添加,然后控制就会显示文本对象的toString()方法,但项目仍保持对象的状态,因此,人们可以很容易操纵。因此,这些项目可用于检索,因为它是整个对象。第二种方法是简单绑定的数据源的控制和设置显示和价值的目的的列名。引人注目的一点是,你可以有大量列,其中一列可用于显示文字和一列值成员可以使用一个DataTable。使用代码
的代码是非常简单和言自明。 ItemObject是类次显示文字的控制作用。
兴趣点public class ItemObject
{
private string key;
private object valueOfKey;
/// <summary>
/// Overloaded constructor.
/// </summary>
/// <param name="key">Key of object.</param>
/// <param name="valueOfKey">Value of object.</param>
public ItemObject(string key, object valueOfKey)
{
this.key = key;
this.valueOfKey = valueOfKey;
}
/// <summary>
/// Default constructor
/// </summary>
public ItemObject()
{
key = string.Empty;
valueOfKey = string.Empty;
}
///<summary>
///Returns a <see cref="T:System.String"></see> that represents the current
///<see cref="T:System.Object">
/// </see>.
///</summary>
///
///<returns>
///A <see cref="T:System.String"></see> that represents the current
///<see cref="T:System.Object">
/// </see>.
///</returns>
public override string ToString()
{
return key;
}
///<summary>
///Serves as a hash function for a particular type.
///</summary>
///
///<returns>
///A hash code for the current <see cref="T:System.Object"></see>.
///</returns>
public override int GetHashCode()
{
return ToString().GetHashCode();
}
/// <summary>
/// Gets or sets Key of object.
/// </summary>
public string Key
{
get { return key; }
set { key = value; }
}
/// <summary>
/// Gets or sets Value of object.
/// </summary>
public object ValueOfKey
{
get { return valueOfKey; }
set { valueOfKey = value; }
}
}
ItemObject类是上述类的容器对象。您可以为您的要求设计自己的容器对象。
的toString()方法是,这里的关键是从应用程序调用toString()方法时,它会返回的重点对象。这解决了陈列的目的。就这么简单!
您可以使用其他类型也与这些控件的DataSource。历史第16届,2007年6月:代码的第一释放
如果你喜欢像这样解决了一个简单的发展问题的文章,请给予反馈。关于Proteans软件解决方案
Proteans是外包公司在微软技术平台的软件产品开发和业务应用开发为重点。 Proteans合作伙伴与独立软件开发商(ISV)的,系统集成商和企业IT团队开发的软件产品。我们的技术重点和重要的经验,在软件产品的开发 - 设计,建设,并释放世界级的,强大和可扩展的软件产品,帮助我们,以减少市场的时间,降低成本,降低经营风险,提高整体业务结果,为我们的客户。 Proteans的专业知识,在使用Microsoft。NET技术的发展。