【问题标题】:working with List<product>使用 List<product>
【发布时间】:2013-10-31 12:02:54
【问题描述】:

我正在使用列表从数据库中获取项目列表。在描述中,我不想使用与获取产品名称和价格相同的方法。

List<Products> product = productBL.AllProducts();
ddProductName.DataTextField = "ProductName";
ddProductName.DataValueField = "ProductId";
ddProductName.DataSource = product;
ddProductName.DataBind();  
ddProductPrice.DataTextField = "ProductPrice";
ddProductPrice.DataValueField = "ProductPrice";
ddProductPrice.DataSource = product;
ddProductPrice.DataBind();

我不想使用以下描述。

productDescription.DataTextField = "ProductDescription";
productDescription.DataValueField = "ProductDescription";
productDescription.DataSource = product;
productDescription.DataBind();

有没有办法这样写:

productDescription.Text = product.Description;  

因为描述是只读的,所以我为什么要多写两行。

【问题讨论】:

  • 真的不清楚你在问什么。请从我们的角度重新阅读并编辑。
  • 是的,请重写它,因为不清楚您的问题是什么。
  • 我的要求是不要使用 databind() 来获取描述。我想少写两行代码..
  • product 是一个列表,那么它怎么会有Description 字段/属性呢?什么是ProductDescriptionproductDescriptionddProductName 等?您提供的一组断开连接的 sn-ps 信息不足以解决您的问题,更不用说解决方案可能是什么了。
  • @DavidArno ddProductName 是显示用户产品的下拉列表。很抱歉输入错误。描述是显示简短描述的文本框..

标签: c# asp.net sql data-binding


【解决方案1】:

您的问题根本不清楚。 但, 就像如果你想显示你的产品名称以及它对你的下拉项目的描述,那么创建另一个连接这两者的属性:

Product.NewPropertyName = (ProductName + Description) 

并像绑定一样

ddProductName.DataTextField = "NewPropertyName";

【讨论】:

  • 我很高兴它有帮助。干杯!!
【解决方案2】:
foreach (Products p in product)
{
    ProductDescription.Items.Add(p.ProductDescription, p.ProductDescription)
}

要么是这样,要么是使用您在上面编写的数据绑定表达式。除了你写的和我上面写的之外,没有更简单的方法可以用项目填充下拉列表。

【讨论】:

    猜你喜欢
    • 2014-01-08
    • 1970-01-01
    • 2020-09-29
    • 1970-01-01
    • 2017-12-21
    • 2022-12-31
    • 2020-06-06
    • 2013-04-29
    • 2014-06-22
    相关资源
    最近更新 更多