我有一個組合框,它從API獲取值。我想獲取該組合框中所選項目的ID,因爲下一個視圖中的數據根據此處選定的值進行更改。如何獲取組合框中選定項目的ID。 C#Metro App
My Combobox。
<ComboBox x:Name="cmbSubjects" HorizontalAlignment="Right" Background="#FFE5DBE8" Width="141" SelectedItem="Maths" Margin="0,217,957,247" ItemsSource="{Binding Source={StaticResource cvsSubjects}}" PlaceholderText="Select"/>
這就是我如何填充它。
private async void getSubjects()
{
try
{
string subjects = baseAddress + "subjects";
var cont = await httpClient.GetStringAsync(new Uri(subjects));
subjectHelper data = JsonConvert.DeserializeObject<subjectHelper>(cont);
foreach (var item in data.result)
{
cmbSubjects.Items.Add(item.name);
}
}
catch (Exception ex)
{
MessageDialog messageDialog = new MessageDialog(ex.Message);
messageDialog.ShowAsync();
}
}
我的課表:
public class Subject
{
public int id { get; set; }
public string name { get; set; }
public string code { get; set; }
public string description { get; set; }
public curriculum curriculam { get; set; }
}
class subjectHelper
{
public List<Subject> result { get; set; }
}
public class unit
{
public int id { get; set; }
public string name { get; set; }
public string code { get; set; }
public string description { get; set; }
public string image { get; set; }
public int teachingHours { get; set; }
public int isMandotory { get; set; }
public Subject subject { get; set; }
}
class unitHelper
{
public List<unit> result { get; set; }
}
用戶將能夠選擇在組合框中的主題,所以我想它返回的主題,所以我可以根據被攝物體動態加載的單位。
有人請幫我做.. 任何形式的幫助表示讚賞......
沒有它trows空例外.... – kirushan
我編輯我的代碼我的職務之後,我添加了錯誤的屬性正確的一個將SelectionChanged =「ComboBox_SelectionChanged」,是否可以檢查這個? –
順便說一句,我認爲,當你綁定項目源,我認爲它是從這裏的主題列表。 ItemsSource =「{Binding Source = {StaticResource cvsSubjects}}」,你只是將名字綁定到代碼後面的文本上,這個方法只有在你綁定'Subject'對象的List時纔有效。您可以將它們綁定爲列表,如果名稱是唯一的,則它會以其他方式工作,您需要有一種方法來單獨檢查其ID。 –