2016-02-19 59 views
0

我有一個表單有幾個綁定到數據源的「RadDropDownList」對象。在加載事件期間,我想使用'SelectedValue'屬性從列表中選擇一個特定的項目,但它似乎沒有工作。它總是選擇列表中的第一個項目。這是來自該項目的代碼;無法以編程方式選擇Telerik RadDropDownList中的值

Private Sub EditUser_Load(sender As Object, e As EventArgs) Handles Me.Load 
     'TODO: This line of code loads data into the 'StoreDataSet.stores' table. You can move, or remove it, as needed. 
     Me.StoresTableAdapter.Fill(Me.StoreDataSet.stores) 
     'Load user data into form 
     FirstNameTextBox.Text = FocusedUser.FirstName 
     LastNameTextBox.Text = FocusedUser.LastName 
     EmailTextBox.Text = FocusedUser.Email 
     DealershipDropDownList.SelectedValue = FocusedUser.Store 
     DepartmentDropDownList.SelectedValue = FocusedUser.Department 
     PositionDropDownList.SelectedValue = FocusedUser.Position 
     CellTextBox.Text = FocusedUser.Phone 
     If FocusedUser.Carrier <> Nothing Then 
      CarrierDropDownList.SelectedValue = FocusedUser.Carrier 
     Else 
      CarrierDropDownList.SelectedValue = 1 
     End If 
     If FocusedUser.StoreManager = True Then 
      DealershipRadioButton.IsChecked = True 
     ElseIf FocusedUser.DepartmentManager = True Then 
      DepartmentRadioButton.IsChecked = True 
     Else 
      BasicRadioButton.IsChecked = True 
     End If 
    End Sub 

'FocusedUser'類的數據存儲在它之前的表單中。 「RadDropDownList」對象的'ValueMember'全部是整數,所涉及的'FocusedUser'字段的值也是如此。任何人都可以幫助我確定爲什麼我的'RadDropDownList'對象沒有在'Load'sub上選擇所需的項目,並指出我如何解決它的正確方向?謝謝!

注意:現在只有「經銷商」下拉列表被綁定。一旦我能得到那個工作,我可以將修復應用到其他人。附加的還有一張屏幕截圖,顯示加載後的表單。請注意,經銷商下拉列表中包含數據,但其值不會更改。即使我移動語句以將所選值更改爲按鈕事件並稍後調用,它也不會更改。如果我使用ComboBox而不是Telerik RadDropDownList,它可以很好地工作。

EditUserFormImage

+0

我有一個類似的問題曾經與Telerik下拉列表,有什麼奇怪的是,通常selectedvalue爲我在任何地方工作,但在'加載'分....是否有可能使用「SelectedText」,而不是「的SelectedValue」?這就是我解決問題的方法。 –

+0

如果您在設置所選值的地方暫停執行並查看DDL的對象,它實際上是否有一些?我想我有這樣的問題,並試圖設置選定的項目之前,控制甚至有項目選擇。也許我必須在控件的數據綁定事件中做到這一點? – clweeks

+0

@clweeks在嘗試設置所選值之前,它的確有一個值。 – Kronos1

回答

0

這裏是一個小例子,我把和值正確選擇:

 DataTable table = new DataTable(); 
     table.Columns.Add("value"); 
     table.Columns.Add("name"); 

     for (int i = 0; i < 10; i++) 
     { 
     table.Rows.Add(i, "name " + i); 
     } 

     radDropDownList1.DisplayMember = "name"; 
     radDropDownList1.ValueMember = "value"; 
     radDropDownList1.DataSource = table; 

     radDropDownList1.SelectedValue = "5"; 
0

我有一個類似的問題。

radDropDownList1.SelectedValue有小數的數據類型和我的查詢語句返回一個整數值

沒有改變SelectedValue

radDropDownList1.SelectedValue = dr("datavalue") 

確實改變SelectedValue

radDropDownList1.SelectedValue = CDec(dr("datavalue")) 

看來你的類型必須匹配才能使其工作

相關問題