C#:如何在其他标签中执行某些操作后自行刷新某个标签?

时间:2012-07-20 10:21:24

标签: tabcontrol

<UserControl.DataContext>
    <local:Model1 />
</UserControl.DataContext>
<Grid x:Name="LayoutRoot">
    <telerik:RadTabControl Name="tab">
        <telerik:RadTabItem x:Name="Tab0"
                            Height="30"
                            MinWidth="100"
                            Header="t1"
                            TabIndex="0">
            <my:Control1 />
        </telerik:RadTabItem>
        <telerik:RadTabItem x:Name="Tab1"
                            Height="30"
                            MinWidth="100"
                            Header="t2"
                            TabIndex="1">
            <my:Control2 />
        </telerik:RadTabItem>
        <telerik:RadTabItem x:Name="Tab2"
                            Height="30"
                            MinWidth="100"
                            Header="t3"
                            TabIndex="2">
            <my:Control3 />
        </telerik:RadTabItem>
    </telerik:RadTabControl>

以下是我的tabcontrol Radtabitems中的所有控件都显示其数据来自数据库的表。 Radtabitems中的所有控件都具有刷新功能,用于刷新数据库中的日期时刷新。

问题是我在其他标签中执行某些操作后如何自行刷新某个标签? 请帮我。感谢。

1 个答案:

答案 0 :(得分:1)

<my:Control2 x:Name = "myControl1"/>

并在.cs中使用selectionchanged

的.cs

selectionchanged....
{
   //if itemIndex = 1
   Control2 temp = myControl1;
   //some veiwing model...for example: ViewControl2
   if(temp.Datacontext is ViewControl2)
   {
      ViewControl2 Viewtmp = temp.Datacontext as ViewControl2;
      Viewtmp.Refresh();//your refresh function can create in Viewtmp
   }
}