2017-07-11 6 views
0

私はドロップダウンリストで使用する次の値を持つdatatable(dtblCostCategory)を持っています。ドロップダウンから値を選択してデータを保存しました。同じページを再びロードすると、最初の値がドロップダウンに表示されますが、選択した値は表示されません。アクセント文字がある場合、IndexOf()が動作しません

 dsOtherDetails 

     CostCategory | typeId | itemCount 
     ---------------------------------------- 
      Softwaré | 3  |  15 

     dtblCostCategory 

       CostCategory | typeId  
       ---------------------------- 
       Electronics | 1 
       Groceries | 2 
       Softwaré  | 3 


       cboCategory.DataSource = dtblCostCategory 
       cboCategory.DataTextField = dtblCostCategory.Columns(1).ToString 
       cboCategory.DataValueField = dtblCostCategory.Columns(0).ToString 
       cboCategory.DataBind() 

       Dim lstItem As New ListItem 
       lstItem.Text = Server.HtmlEncode(Trim(CStr(dsOthersDetails.Tables(0).Rows(0).Item("CostCategory")))) 
       lstItem.Value = Server.HtmlEncode(CStr(dsOthersDetails.Tables(0).Rows(0).Item("typeId"))) 
       cboCategory.SelectedIndex = cboCategory.Items.IndexOf(lstItem) 

上記のコードでは、2つのテーブルの値を比較して、選択したインデックスを取得するためにindexOfを使用しました。カテゴリ(Softwaré)にアクセントがあるため、indexOfは正しく機能していません。ドロップダウンが正しい選択された値を持つようにアクセントを無視して選択インデックスを得る方法がありますか?

答えて

1

は、それが働いたFindByValue()

cboCategory.SelectedIndex = cboCategory.Items.IndexOf(cboCategory.Items.FindByValue(lstItem.Value)); 
+0

おかげ@Sainプラディープで試してみてください。 – Kumar

関連する問題