【问题标题】:Load event for Grid网格的加载事件
【发布时间】:2009-08-26 18:23:30
【问题描述】:

我正在尝试在 Silverlight 中初始化我的控件。我正在寻找类似于 Form_Load 事件的东西,它会在表单第一次加载时触发。

Silverlight 中的 Loaded 事件很早就被调用,甚至在控件显示在 UI 中之前。我想在第一次呈现控件的 UI 之前进行初始化。我有什么选择?下面是我的代码供参考。这是非常基本的。

感谢您的回复!

1    <local:ControlBase x:Class="MyUserControl"
2        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
3        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
4        xmlns:local="clr-namespace:GridTest.UI.Framework;assembly=GridTest.UI.Framework"
5        xmlns:ImageViewer="clr-namespace:GridTest.ImageViewer"
6        FontFamily="./Fonts/CALIBRI.TTF#Calibri" FontSize="13">
7        <Grid x:Name="LayoutRoot" Background="White" Loaded="MyUserControl_Loaded" >
8            <ImageViewer:ImagePreview HorizontalAlignment="Stretch" VerticalAlignment="Stretch" x:Name="ucImagePreview"/>
9    </local:ControlBase>
10   

【问题讨论】:

  • 您能解释一下为什么 Loaded 事件不适合您吗?

标签: c# .net xaml silverlight-3.0


【解决方案1】:

对于这种情况,我倾向于在 UserControl 构造函数中连接 UserControls Loaded 属性,并且没有遇到任何问题。

所以在我的控制代码后面我有:

public Control()
        {
            InitializeComponent();
            this.Loaded += new RoutedEventHandler(Control_Loaded);
        }

void Control_Loaded(object sender, RoutedEventArgs re)
        {
//Do any init here
}

HTH

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-20
    • 2022-01-15
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多