メイン ウィンドウが 1 つだけの WPF アプリケーションと、WPF ページを開くために使用する IFrame があります。ボタンをクリックすると、いくつかのデータを含むグリッドを持つウィンドウを開くページがあります。
その「ポップアップ」ウィンドウからページに日付を表示するにはどうすればよいですか?
ウィンドウから親要素を取得しようとしましたが、何もありません。
もう一度よろしくお願いします!
メイン ウィンドウが 1 つだけの WPF アプリケーションと、WPF ページを開くために使用する IFrame があります。ボタンをクリックすると、いくつかのデータを含むグリッドを持つウィンドウを開くページがあります。
その「ポップアップ」ウィンドウからページに日付を表示するにはどうすればよいですか?
ウィンドウから親要素を取得しようとしましたが、何もありません。
もう一度よろしくお願いします!
あなたが何を望んでいるのかよくわかりませんが、試してみましょう。
私のメインウィンドウ XAML:
<Window x:Class="Teste.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Button Content="New Window" Margin="0,220" Grid.Column="1" Grid.ColumnSpan="1" Click="Button_Click" />
</Grid>
</Window>
MainWindow.xaml.cs の再開:
namespace Teste
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
myWindow newWindow = new myWindow();
var child = (TextBlock)newWindow.FindName("txtBlock");
MessageBox.Show(child.Text);
}
}
}
myWindow.xaml:
<Window x:Class="Teste.myWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="myWindow" Height="300" Width="300" SizeToContent="WidthAndHeight">
<StackPanel>
<TextBlock x:Name="txtBlock" Text="Some Text" Margin="100" />
</StackPanel>
</Window>
さて、それを念頭に置いて:
child
という名前の要素を検索します。txtBlock
child
、要素も としてキャストするTextBlock
ため、コードは次のようになります。var child = (TextBlock)newWindow.FindName("txtBlock");
Text
プロパティを使用し、その内容をMessageBox
コードで表示します。MessageBox.Show(child.Text);
幸運を!