如何从TextBlock的代码隐藏中访问以下XAML的图像?
<TextBlock Name="btnRating5" PreviewMouseDown="btnRating5_PreviewMouseDown"
Tag="{Binding ID}" Margin="5,0,0,0" Padding="1">
<Image Source="{Binding Rating, Mode=OneTime, Converter={StaticResource MyImagePathConverter}}" />
</TextBlock>
答案 0 :(得分:2)
您可以使用VisualTreeHelper
课程让孩子获得任何控制权。
假设您想在TextBlock的PreviewMouseDown事件中找到图像,那么您可以这样做:
private void btnRating5_PreviewKeyDown(object sender, ....... e)
{
var containerVisual = VisualTreeHelper.GetChild((TextBlock)sender, 0) as ContainerVisual;
Image myImage = containerVisual .Children[0] as Image;
}
如果代码不起作用,请尝试将索引从0更改为1.
如果您有任何问题,请告诉我:)。