当前位置: 代码迷 >> Windows Mobile >> Listbox 获取子控件的有关问题
  详细解决方案

Listbox 获取子控件的有关问题

热度:425   发布时间:2016-04-25 07:23:12.0
Listbox 获取子控件的问题
当发生SelectionChanged事件时, 想更改以下“img_findme”的图片,尝试了几次都失败了, 上代码求指教



<ListBox x:Name="list_logs"  SelectionChanged="Log_SelectionChanged">
     <ListBox.ItemTemplate>
            <DataTemplate>
                 <StackPanel>
                      <Image x:Name="img_findme" Width="280" Source="{Binding pic}" />
                 </StackPanel>         
             </DataTemplate>
     </ListBox.ItemTemplate>
</ListBox>



private void Log_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
     Image img_toplay = GetChildObject<Image>(list_logs, "img_findme");//可以方式找到的不是选择项的图片

     ListBoxItem boxitem = list_logs.Items[menuListBox.SelectedIndex] as ListBoxItem;
    Image img_toplay = GetChildObject<Image>(boxitem, "img_findme");//这种方式找不到,boxitem是null
}

------解决方案--------------------

        /// <summary>
        /// 根据name获取可视子元素
        /// </summary>
        /// <param name="dependencyObject">当前元素</param>
        /// <param name="name">指定子元素名</param>
        /// <returns></returns>
        public static FrameworkElement FindVisualChildByName(this DependencyObject dependencyObject, String name)
  相关解决方案