Загрузить событие для Grid - PullRequest
0 голосов
/ 26 августа 2009

Я пытаюсь инициализировать свои элементы управления в Silverlight. Я ищу что-то похожее на событие Form_Load, которое срабатывает при первой загрузке формы.

Событие Loaded в Silverlight вызывается довольно рано, даже до того, как элемент управления отображается в пользовательском интерфейсе. Я хочу инициализировать до визуализации пользовательского интерфейса элемента управления в первый раз. Какой у меня есть выбор? Ниже мой код для справки. Это довольно просто.

Ценю ваш ответ!

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   

1 Ответ

1 голос
/ 27 августа 2009

Для этого сценария я склонен подключать свойство UserControls Loaded в конструкторе UserControl и не сталкивался с какими-либо проблемами с этим.

Итак, в моем контрольном коде позади:

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

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

НТН

...