Я создал своего собственного рекламного устройства, чтобы оно покрывало мое главное окно серым холстом вместе с текстовым блоком в центре, чтобы показать некоторый текст статуса, пока я работал над другим окном.
Что я сейчас делаю, так это извлекаю требуемый adornerElement (т.е. Canvas с текстовым блоком) из моих ресурсов и передаю его рекламодателю в конструкторе моего представления следующим образом -
ResourceDictionary reportResourceDictionary = App.LoadComponent(new Uri("Resources/ReportResources.xaml", UriKind.Relative)) as ResourceDictionary;
UIElement adornerElement = reportResourceDictionary["RefreshingReportAdorner"] as UIElement;
mainWindowBlockMessageAdorner = new MainWindowBlockMessageAdorner(mainPanel, adornerElement);
Но я хочу обновить этот текст в текстовом блоке в некоторых сценариях, скажем, если я нажму на какую-нибудь кнопку в другом окне, но как обновить текст динамически ??
Элемент Adorner из файла ресурсов-
<Grid x:Key="RefreshingReportAdorner">
<Rectangle Fill="Gray"
StrokeThickness="1"
Stroke="Gray"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"/>
<Border BorderBrush="Black"
BorderThickness="2"
Background="White"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<TextBlock i18n:LanguageManager.VisualId="6"
Text="Some Text(Update dynamically)"
Padding="15,10,15,10"/>
</Border>
</Grid>
Дайте мне знать, если потребуется дополнительный код или подход ..