ألتراويبغريد:كيفية استخدام القائمة المنسدلة في عمود

StackOverflow https://stackoverflow.com/questions/15219

سؤال

أنا أستخدم شبكة Infragistics وأواجه صعوبة في استخدام القائمة المنسدلة كمحدد للقيمة لأحد الأعمدة الخاصة بي.

لقد حاولت قراءة الوثائق ولكن وثائق Infragistics ليست جيدة جدًا.لقد ألقيت نظرة على هذا أيضا مناقشة بدون حظ.

ما أفعله حتى الآن:

col.Type = ColumnType.DropDownList;
col.DataType = "System.String";

col.ValueList = myValueList;

أين myValueList يكون:

ValueList myValueList = new ValueList();

myValueList.Prompt = "My text prompt";
myValueList.DisplayStyle = ValueListDisplayStyle.DisplayText;

foreach(MyObjectType item in MyObjectTypeCollection)
{
    myValueList.ValueItems.Add(item.ID, item.Text); // Note that the ID is a string (not my design)
}

عندما أنظر إلى الصفحة، أتوقع رؤية قائمة منسدلة في الخلايا الخاصة بهذا العمود، لكن أعمدتي فارغة.

هل كانت مفيدة؟

المحلول 2

لقد وجدت ما هو الخطأ.

يجب أن يسمح العمود بالتحديثات.

uwgMyGrid.Columns.FromKey("colTest").AllowUpdate = AllowUpdate.Yes;

نصائح أخرى

إليك مثال من إحدى صفحاتي:

UltraWebGrid uwgMyGrid = new UltraWebGrid();
uwgMyGrid.Columns.Add("colTest", "Test Dropdown");
uwgMyGrid.Columns.FromKey("colTest").Type = ColumnType.DropDownList;
uwgMyGrid.Columns.FromKey("colTest").ValueList.ValueListItems.Insert(0, "ONE", "Choice 1");
uwgMyGrid.Columns.FromKey("colTest").ValueList.ValueListItems.Insert(1, "TWO", "Choice 2");
    public void MakeCellValueListDropDownList(UltraWebGrid grid, string columnName, string valueListName, string[] listArray)
    {
        //Set the column to be a dropdownlist
        UltraGridColumn Col = grid.Columns.FromKey(columnName);            
        Col.Type = ColumnType.DropDownList;
        Col.DataType = "System.String";

        try
        {
            ValueList ValList = grid.DisplayLayout.Bands[0].Columns.FromKey(columnName).ValueList;
            ValList.DataSource = listArray;
            foreach (string item in listArray)
            {
                ValList.ValueListItems.Add(item);
            }
            ValList.DataBind();
        }
        catch (ArgumentException)
        {

        }
    }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top