初めての質問です。C#, Xaml, UWP共に初心者ですので、基本的なことについても解説があると助かります。
Visual Studio 2017 Communityで開発を行っています。
UWPで、MainPage.xamlに、コードビハインドである> MainPage.xaml.cs以外のクラスから
TextBlockを作成し、出力したいと思っています。
以下は、ボタンをクリックすると、TextBlock.Text
にメッセージを出力するというプログラムです。
現在はTextBlock
のUI定義がMainPage.xamlに書かれており、ボタンが押されると文字を表示する処理を、MainPage.xaml.csに書いています。
MainPage.xaml
XAML
1 <Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="38,66,0,0" VerticalAlignment="Top" Height="102" Width="173" Click="button_Click"/> 2<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Height="108" Margin="174,220,0,0" Text="TextBlock" TextWrapping="Wrap" VerticalAlignment="Top" Width="324"/>
MainPage.xaml.cs
C#
1private void button_Click(object sender, RoutedEventArgs e) 2{ 3 this.textBlock.Text = "表示したい文字"; 4}
このプログラムのTextBlock
に関する部分を、別のクラスWriteText.cs に記述し、処理を分けたいと思っています。
イメージとしては、MainPage.xamlにはUI定義はボタンしかなく、ボタンをクリックすると、WriteText.csクラスのメソッドが呼び出され、TextBlock
の生成とTextBlock.Text
の出力を行いたいです。
MainPage.xaml.cs
c#
1private void button_Click(object sender, RoutedEventArgs e) 2{ 3 WriteText wt = new WriteText(); 4 wt.Write(); // TextBlockの作成と出力 5}
WriteText.cs
C#
1 2public class WriteText { 3 public void Write() { 4 // MainPage.xaml上にTextBlockを配置 5 6 // 配置したTextBlock.Textの編集 7 textBlock.Text = "表示したい文字"; 8 } 9 10} 11
TextBlock
をほかのクラスから生成したり、変更するためにはどうすればよいでしょうか?
(生成が難しいのであれば、TextBlock
のUI定義はxamlに記載して、TextBlock.Text
だけを他のクラスから変更する方法でも構いません)
有識者の皆様にご教授頂けると幸いです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー