2012-04-20 4 views
7

私はAsp.NETプロジェクトで作業しており、テキストプロパティでドロップダウンリストの選択値を設定しようとしています。たとえば、私は、テキストがtestのドロップダウンリストにあるアイテムを持っています。プログラムによって、selecteditemText?と設定できますか?私は以下のコードを使用していますが、動作していません。DropDownList.textで選択する方法

しかし、動作していません。助言がありますか ?

答えて

23
string t = "test"; 
drpFunction.Items.FindByText(t).Selected = true; 
+1

が表示されます。私の場合は、単一の項目だけを選択できるドロップダウンがありました。それは言及する価値があるかもしれません。アイテムが現在選択されている場合は、最初に選択したオプションの選択を解除する必要があります。それ以外の場合は、複数のアイテムを選択できないことを示す例外がスローされます。 'YourDropDownListId.ClearSelection();' –

1

このLinkが、これは適切な方法であなた

public static void SelectText(this DropDownList bob, string text) 
{ 
    try 
    { 
     if (bob.SelectedIndex >= 0) 
      bob.Items[bob.SelectedIndex].Selected = false; 
     bob.Items.FindByText(text).Selected = true; 
    } 
    catch 
    { 
     throw new GenericDropDownListException("value", text); 
    } 
} 
-1

これを使用して...

protected void Page_Load(object sender, EventArgs e) 
{ 
    string t = "test"; 
    drpFunction.SelectedItem.Text = t; 
} 

または

protected void Page_Load(object sender, EventArgs e) 
{ 
    string t = "test"; 
    drpFunction.SelectedItem.Value = t; 
} 

に役立つかもしれない.......

0

私はプロパティが必要なものを行うべきだと思います。

0

これは、これはまた、正常に動作したWeb

ListItem li=new ListItem(); 

li.Text="Stringxyz"; 
li.Value="Stringxyz";  // Create object of item first and find its index. 

DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(li); 

で動作します。

4

itm.Selected = trueを設定します。最初にdrp.ClearSelection()を実行した場合にのみ機能します。 Iは、以下を好む:

drpFunction.SelectedValue = drpFunction.Items.FindByText(t).Value; 
0
protected void Page_Load(object sender, EventArgs e) 
{ 
    string t = "test"; 
    drpFunction.SelectedValue = t; 
} 

SelectedValueのプロパティ項目の値とを設定することにより、リストコントロール内の項目を選択するために使用することができます。ただし、選択した値がドロップダウンリストの値のリストと一致しない場合は、ポストバック中に例外がスローされます。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.selectedvalue(v=vs.110).aspx

+0

コードのブロックを投稿するのではなく、答えを説明する必要があります。 –

+0

@ChrisLoonamあなたは絶対に正しいです。 – JimmyBytes

3
drpFunction.SelectedValue = drpFunction.Items.FindByText(t).Value; 

これは、テキストを選択するための良い方法です。 iodenさんちなみに、これは私のために働いたエラー

「複数のアイテムをDropDownListコントロールで選択することができません」

関連する問題