Silverlight 绑定完成后如何引发事件?
我正在开发的应用程序中有一个文本框,绑定是在xaml中完成的 当TextBox文本属性的绑定完成时,我希望能够引发一个事件,这意味着当文本通过绑定加载/更改到TextBox时,我如何实现这一点 我尝试了TextChanged事件也加载了事件,但在绑定完成后没有运气,所以我该怎么做Silverlight 绑定完成后如何引发事件?,silverlight,events,xaml,binding,raise,Silverlight,Events,Xaml,Binding,Raise,我正在开发的应用程序中有一个文本框,绑定是在xaml中完成的 当TextBox文本属性的绑定完成时,我希望能够引发一个事件,这意味着当文本通过绑定加载/更改到TextBox时,我如何实现这一点 我尝试了TextChanged事件也加载了事件,但在绑定完成后没有运气,所以我该怎么做 <ListBox x:Name="listBoxCategories" Background="Transparent" BorderThickness="0" Grid.Row="4" Grid.ColumnS
<ListBox x:Name="listBoxCategories" Background="Transparent" BorderThickness="0" Grid.Row="4" Grid.ColumnSpan="2" Margin="0" Padding="0" ItemContainerStyle="{StaticResource ListBoxItemStyle}" ItemsSource="{Binding ElementName=discussion_categoryDomainDataSource, Path=Data}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel x:Name="stackPanelCategory" Orientation="Vertical" Margin="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<TextBlock x:Name="TextBlockCategoryId" Text="{Binding Path=CategoryID}" />
<toolkit:Expander IsExpanded="True" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Style="{StaticResource ForumExpanderStyleRight}">
<toolkit:Expander.Header>
<TextBlock FontSize="16" FontWeight="Bold" Foreground="White" Margin="4,0,4,0" Text="{Binding CategoryName}" LayoutUpdated="TextBlock_LayoutUpdated" />
</toolkit:Expander.Header>
<ListBox x:Name="listBoxBoards" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Background="Transparent" BorderThickness="0" Margin="0" Padding="0" ItemContainerStyle="{StaticResource ListBoxItemStyle}" ItemsSource="{Binding CategoryBoards}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="0" HorizontalAlignment="Stretch" x:Name="GridBoard">
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</toolkit:Expander>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
在这条线上
<TextBlock x:Name="TextBlockCategoryId" Text="{Binding Path=CategoryID}" />
我想要一个事件,当绑定完成时,我想要为父堆栈面板下的列表框提供不同的数据源,因此我需要绑定事件,以便在文本块中具有catedory id时,该文本块稍后将隐藏在xaml中(由于测试原因,现在不会折叠)这是一件有点奇怪的事情,如果您能告诉我们为什么要这样做,可能会有所帮助 然而,由于手头没有其他信息,我将提出一个解决方案
如果TextBox API事件没有提供您需要的信息,请尝试处理
LayoutUpdated
事件。每次发生布局时都会触发此事件,通常是在元素添加到可视化树时触发。当此事件激发时,请检查您的TextBox.Text
属性以查看是否已设置。这为我解决了问题:)
在内部文本块而不是上部文本块中加载事件,因为加载时,上部文本块的文本已绑定,因此我可以检索ID:)我有一个文本框,并将其绑定到datatemplate的列表框中,当通过绑定设置文本框文本时,我希望能够引发事件,或者如果有是binding done事件吗?我想对其他控件执行其他操作,但首先我想在通过binding填充此文本框文本属性时引发一个事件,该事件表示此文本属性已更改(我尝试加载和textChanged事件,但它们没有按我所希望的方式工作,当我加载UI冻结时,当使用textChanged时,它不会在绑定时引发事件,但后来我添加了更清晰的内容LayoutUpdate主要为我提供了一个空发件人,我需要它是TextBlock/TextBox,稍后将隐藏在前端
<TextBlock FontSize="16" FontWeight="Bold" Foreground="White" Margin="4,0,4,0" Text="{Binding CategoryName}" Loaded="TextBlock_Loaded" />