任何幫助表示讚賞。我對WPF很陌生。我有一個樹形視圖正在填充一個XML文件。當選擇樹視圖項目時,我需要它顯示在文本框中。我在彈出窗口中使用了treeview,並且已經獲得了它,這樣當選中的文本框被選中時,它將彈出一個treeview提示用戶在樹視圖上進行選擇。之後,它應該將該樹視圖選擇放回到同一個文本框中。這裏是我的代碼:WPF填充treeview選項到文本框
<TextBox Name="text"
Text="{Binding Path=SelectedItem.name, ElementName=dirTree}"
Style="{StaticResource CustomTextBoxStyle}"
Grid.Column="1"
Margin="47,326,110,140"
TextChanged="text_TextChanged" />
而且樹形部分:
<Popup PlacementTarget="{Binding ElementName=text}"
VerticalOffset="20"
HorizontalOffset="-180"
Margin="0,0,465,279"
Name="popup1"
AllowsTransparency="True"
Placement="Top">
<Popup.Style>
<Style TargetType="{x:Type Popup}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=text, Path=IsFocused}"
Value="True">
<Setter Property="IsOpen"
Value="True" />
</DataTrigger>
<!--<DataTrigger Binding="{Binding ElementName=popupText, Path=IsFocused}"
Value="True">
<Setter Property="IsOpen"
Value="True" />
</DataTrigger>-->
</Style.Triggers>
</Style>
</Popup.Style>
<Grid>
<Border BorderThickness="2"
Background="DodgerBlue"
BorderBrush="DodgerBlue"
Padding="0"
CornerRadius="6">
<ScrollViewer Height="300"
Name="scrollViewer1"
Width="175"
BorderBrush="Black"
Background="DodgerBlue">
<TreeView Name="dirTree"
ItemsSource="{Binding Source={StaticResource xmldata}, XPath=.}"
VirtualizingStackPanel.IsVirtualizing="False"
VirtualizingStackPanel.VirtualizationMode="Standard"
GotFocus="TreeView1_GotFocus"
SelectedItemChanged="{Binding ElementName=dirTree, Path=SelectedItem}"/>
</ScrollViewer>
</Border>
</Grid>
</Popup>
你在做什麼'SelectedItemChanged =「{Binding ElementName = dirTree,Path = SelectedItem}」/>'這甚至編譯??,你似乎試圖綁定一個'Eventhandler'(SelectedItemChanged)到它的擁有'SelectedItem'(對象)??? – 2013-03-12 00:29:56
彈出框的觸發器是與我希望樹視圖選擇重新插入的相同文本框。這就是我**想要做的事情。 – Nallware 2013-03-12 13:27:19