我有一個XAML TextBlock的約束如下:在代碼背後,這個xaml綁定的等價物是什麼?
<TextBlock Text="{Binding LastName}"/>
如何在C#代碼隱藏訪問SelectedItem.LastName?謝謝。
詳細說明:
的數據是從一個XML文件
<Player>
<LastName>...</LastName>
<Age>...</Age>
</Player>
組合框結合進行了簡化爲清楚起見如上XAML文件。
我有一個XAML TextBlock的約束如下:在代碼背後,這個xaml綁定的等價物是什麼?
<TextBlock Text="{Binding LastName}"/>
如何在C#代碼隱藏訪問SelectedItem.LastName?謝謝。
詳細說明:
的數據是從一個XML文件
<Player>
<LastName>...</LastName>
<Age>...</Age>
</Player>
組合框結合進行了簡化爲清楚起見如上XAML文件。
尋找呢? http://msdn.microsoft.com/en-us/library/ms742863.aspx
MyData myDataObject = new MyData(DateTime.Now);
Binding myBinding = new Binding("MyDataProperty");
myBinding.Source = myDataObject;
myText.SetBinding(TextBlock.TextProperty, myBinding);
SelectedItem屬於`playerComboBox'。因此,它應該是:
(playerComboBox.SelectedItem as TypeOfselectedItem).LastName
修改上面的答案:
var selectedPlayer = (Player)playerComboBox.SelectedItem;
var age = selectedPlayer.Age;
var lastName = selectedPlayer.LastName;
好像這是你在找什麼。
UPDATE(如果「沒有Player類」):
dynamic player = playerComboBox.SelectedItem;
int age = player.Age;
string lasName = player.LastName;
我的問題是沒有播放器類。該類型是匿名的。如果我做了一個playerComboBox.SelectedItem.ToString(),它將顯示{...}中的整個XML節點。 – user776676 2012-02-05 01:02:17
當我做一個playerComboBox.SelectedItem.GetType()。ToString()它說它是一個匿名類型:<> f_AnonymousType0'2 ... – user776676 2012-02-05 02:16:14
請提供xaml聲明組合框(包括綁定和模板)的部分。 – 2012-02-05 18:59:33
阿努拉格,通過TypeOfselectedItem你的意思是,我需要與其他類型如String或雙取代它取決於名字的類型?因爲我沒有看到該關鍵字。如果是這樣,如果所選項目的類型是匿名的,該怎麼辦。謝謝。 – user776676 2012-02-03 22:29:54
請向您的問題添加代碼,以瞭解如何綁定到playerComboBox。 _TypeOfSelectedItem_是保存_LastName_的對象。 – 2012-02-03 23:18:51
我簡化了並增加了一些代碼。現在我想在選擇組合框中的項目時在代碼後面訪問LastName和Age。 – user776676 2012-02-03 23:48:22