나는 DataTable
다음과 같은 방식으로 구성합니다.
DataTable data = new DataTable();
data.Columns.Add("year");
data.Columns.Add("month");
data.Columns.Add("id");
data.Columns.Add("displayText");
data.Columns["displayText"].Expression = "Convert(year, 'System.String') + ' / ' + Convert(month , 'System.String')";
DataColumn[] keyColumns = new DataColumn[2];
keyColumns[0] = data.Columns["year"];
keyColumns[1] = data.Columns["month"];
data.PrimaryKey = keyColumns;
data
monthList
드롭 다운 목록 의 데이터 소스로 사용됩니다.
this.monthList.DataTextField = "displayText";
this.monthList.DataValueField = "id";
this.monthList.DataSource = data;
this.monthList.DataBind();
그런 다음 키 열의 두 구성 요소를 모두 추출해야하는 이벤트 처리기가 있습니다.
어떻게 할 수 있습니까?
사용하려고했지만 monthList.SelectedItem.Value
문자열이 포함되어 있습니다 "System.Object[]"
.
업데이트 1 : 다음은 디버거의 스크린 샷입니다.
업데이트 2 : 항목을 추가하는 방법은 다음과 같습니다 data
.
var row = data.NewRow();
row["year"] = 2014;
row["month"] = 5;
row["id"] = new object[] { 2014, 5 };
data.Rows.Add(row);
id
동일한 값이 동일한 행에 저장되지만 다른 열에 저장된다는 점을 고려 하여 필드에 배열을 저장하려는 이유는 확실하지 않지만 개체 유형의 열을 선언하면 해당 필드의 값을 추출 할 수 있습니다.
data.Columns.Add("id", typeof(object));
다음으로 검색
object[] ids = (object[])data.Rows[0]["id"];
for(int x = 0; x < ids.Length; x++)
Console.WriteLine(Convert.ToInt32(ids[x]));
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다