سؤال

يجب أن أقوم ببعض الصيانة على تطبيق VB.NET القديم (Visual Studio 2003) الذي يستخدم Infragistics NetAdvantage 2006.

أحتاج إلى إضافة عمود إلى عنصر تحكم Ultagrid موجود. يجب أن يتصرف هذا العمود الجديد مثل Combobox، مما يسمح بالتحديد من قائمة القيم.

أضفت العمود الجديد، وقم بتعيين النمط إلى ScressDownValidate. لقد أنشأت الثمار وتعيينها إلى العمود الجديد.

في وقت التشغيل، لا أحصل على النتائج المتوقعة. ماذا ينقصني؟

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

المحلول

شيء من هذا القبيل يجب أن يعمل من أجلك:

var dataTable = new DataTable( "Table1" );
dataTable.Columns.Add( "Column1" );
dataTable.Rows.Add( dataTable.NewRow() );

ultraGrid1.DataSource = dataTable;

var valueList = new ValueList();
valueList.ValueListItems.Add( "dataValue1" , "displayText1" );
valueList.ValueListItems.Add( "dataValue2" , "displayText2" );
valueList.ValueListItems.Add( "dataValue3" , "displayText3" );

ultraGrid1.DisplayLayout.Bands[0].Columns[0].ValueList = valueList;

// Setting the ColumnStyle to DropDownList ensures that the user will not 
// be able to type in the cell (exclude this line if you want to allow typing)
ultraGrid1.DisplayLayout.Bands[0].Columns[0].Style = ColumnStyle.DropDownList;
// Setting the ButtonDisplayStyle to Always ensures that the UltraGridColumn 
// always displays as a ComboBox and not just when the mouse hovers over it
ultraGrid1.DisplayLayout.Bands[0].Columns[0].ButtonDisplayStyle = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;

نصائح أخرى

يعمل هذا الرمز بالنسبة لي:

ultagridvaluelist.valuelistitems.add ("ValuememeBer1"، "DisplayMemeBer1")؛ ultagridvaluelist.valuelistitems.add ("ValuememeBer2"، "DisplayMemeBer2")؛ ultagridvaluelist.valuelistitems.add ("ValuememeBer3"، "DisplayMemeBer3")؛ ultagridvaluelist.valuelistitems.add ("ValuememeBer4"، "DisplayMemeBer4")؛

Ultagrid1.displaylayout.bands [0] .columns ["mydropdowncol"]. الثمار = ultagridvaluentist؛

أنا عموما ترك النمط الافتراضي.

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