2012-11-14 94 views
3

我想在Visual Studio中創建一個Windows應用程序。Windows應用程序C#字符串combobox

public Form1()中,我用SelectComboBox.Items.Insert(0, "Text");向我的ComboBox添加了一些項目,並創建了一個字符串ex。 string NR0 = "__";帶一首特別的歌。

當我在ComboBox中選擇了一個項目並單擊了某個選擇後,我想讓Windows Media Player播放頂部字符串(例如NR0)中的特定歌曲。

我曾嘗試在選擇按鈕的代碼中創建一個字符串。 string ComboNow = "NR" + SelectComboBox.Items.Count.ToString();,然後用Player.URL = @ComboNow;更改了URL。

但是,玩家認爲URL是字符串的名稱(例如NR0)。

你有什麼想法來解決這個問題。

謝謝


代碼如下所示:

namespace Player 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      SelectComboBox.Items.Insert(0, "First song"); 
      string NR0 = "URL to song"; 

      SelectComboBox.Items.Insert(1, "Second song"); 
      string NR1 = "URL to song"; 
     } 

     private void SelectButton_Click(object sender, EventArgs e, string[] value) 
     { 
      string ComboNow = "NR" + SelectComboBox.Items.Count.ToString(); 
      Player.URL = @ComboNow; 
     } 
    } 
} 
+0

不要找到更多的方式來做到這一點,我選擇了我的路。謝謝大家,他們曾用時間來幫助我。我是丹麥的一名青少年,所以我很抱歉,如果我在語法上遇到一些問題。 – akhegr

回答

1

你可以使用一個列表或數組:

private List<string> songs = new List<string>(); 
//... 
SelectComboBox.Items.Insert(0, "First song"); 
songs.Add("URL to song"); 
//... 
Player.URL = songs[SelectComboBox.SelectedIndex]; 
+0

非常好,下面的例子更簡單。 – akhegr

0

既然你明確地把這些項目到指定的位置,我會做一些像創建詞典:

private Dictionary<int, string> Songs 
{ 
    get 
    { 
     return new Dictionary<int, string>() 
      { 
       { 0, "url of first song" }, 
       { 1, "url of second song" } 
      }; 
    } 
} 

然後你可以像這樣得到URL:

string playerURL = Songs[comboBox1.SelectedIndex]; 

請注意,這隻會工作,因爲您將項目按特定順序放入組合框,如果這不是您將來想要的,這不適合您。

+0

@Downvoter,請解釋一下。如果沒有被告知有什麼問題,就不能學習! – Arran

+0

非常感謝,從開始我有一個很長的清單,如果有其他檢查號碼,請再次檢查一個新號碼。 – akhegr

相關問題