0

ドロップダウンは、リストへのデフォルト行の追加を無視します

.CS

private const string DropDownListValue = "[All]";
private const string DropDownListText = "[All]";

 private void LoadProduct()
    {
        try
        {
            FieldGoalEntities objEntity = new FieldGoalEntities();

            IQueryable<Product> objProduct = from p in objEntity.Product
                                             select p;

            ddlProduct.Items.Clear();

            if (objProduct != null)
            {

                ddlProduct.DataSource = objProduct;
                ddlProduct.DataValueField = "ProductCode";
                ddlProduct.DataTextField = "ProductCode";
                ddlProduct.DataBind();
            }

            ddlProduct.Items.Insert(0, new ListItem(DropDownListText, DropDownListValue));
        }
        catch (Exception ex)
        {
            Common.LogEvent(Common.LoggingType.Error, "LoadProduct", ex.Message);
            Common.ShowMessageBox(this.Master, "Error", "Load Product Status: " +     ex.Message);
        }
    }

// ASPX

// DropdownBox

フィルタリングのためにすべてを追加する必要がありますが、何らかの理由で.CSファイルでデータバインディングを実行すると、[ALL]が省略されます。

4

1 に答える 1

0

ddlProduct.DataBind();すべてをItemsリストに追加してから電話する必要があります

if (objProduct != null)
{

    ddlProduct.DataSource = objProduct;
    ddlProduct.DataValueField = "ProductCode";
    ddlProduct.DataTextField = "ProductCode";

}

ddlProduct.Items.Insert(0, new ListItem(DropDownListText, DropDownListValue));
ddlProduct.DataBind();
于 2013-01-03T06:48:42.573 に答える