I have control like this
<UserControl x:Class="VideoControl.VideoControl" Loaded="getProperty"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
</UserControl>
そして、私はこのような方法を持っています
private void getProperty(object sender, RoutedEventArgs e) {
var objContext = (IContentItem)this.DataContext;
var Scrn = (Microsoft.LightSwitch.Client.IScreenObject)objContext.Screen;
var anonObject = Scrn.Details.Properties["VidContentItemRessourcesItem"].Value;
string result= anonObject.GetType().GetProperty("AssetPubLocator").GetValue(anonObject, null).ToString();
}
しかし、これを実行すると、ライトスイッチ画面がロードされる前に定義済みのロードされたsilverlight関数が呼び出されるため、オブジェクトの結果はnullになります。したがって、私の質問は、画面が何らかの方法でロードされた後にこのメソッドを呼び出す方法です(ボタンをクリックしません)。