🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

Q&A

解決済

1回答

908閲覧

XAML ReactivePropertyを使った際のプレビュー表示

firesign

総合スコア15

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

0グッド

1クリップ

投稿2020/12/04 03:01

編集2020/12/04 03:47

#[C#]質問:LabelやTextBoxにReactivePropertyをBindingを設定した際、デザイナー上にプレビューデータが表示されない

下記のようにVisual studioのXAMLに記述するとReactiveProperty<Int>で定義された変数aの場合はプレビューにデータ表示されますがReactiveProperty<String> bの場合はプレビューに表示されません。

原因がわからず困っております。よろしくお願いします。

XAML

1<UserControl 2xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 3xmlns:local="clr-namespace:TestApp" 4mc:Ignorable="d" 5d:DataContext={d:DesignInstance {x:Type local:Param}}"/> 6 7<TextBox Text="{Binding a.Value,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}">//ReactiveProperty<Int> a:0が表示される 8<TextBox Text="{Binding b.Value,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}">//ReactiveProperty<String> b:何も表示されない 9 10

C#

1 public class Param:ICloneable,INotifyPropertyChanged 2 { 3 public event PropertyChangedEventHandler PropertyChanged; 4 5 public ReactiveProperty<Int32> a { get; set; } = new ReactiveProperty<Int32>(0, mode: ReactivePropertyMode.RaiseLatestValueOnSubscribe); 6 7 public ReactiveProperty<String> b { get; set; } = new ReactiveProperty<String>("0", mode: ReactivePropertyMode.RaiseLatestValueOnSubscribe); 8 }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hihijiji

2020/12/04 03:29

Paramクラス を掲示してください。
TN8001

2020/12/04 03:33

値が入っていない(null)だけじゃないですか?
guest

回答1

0

自己解決

下記のページを参考に修正したところ期待する動作が確認できました。
https://qiita.com/FKbelm/items/10f9276e217b5bf83cb0
https://www.little-cuckoo.jp/entry/2019/01/05/120000

引数無しコンストラクタがある かつ下記のようにIsDesignTimeCreatable=Trueを設定すれば良いということがわかりました。
d:DataContext="{d:DesignInstance local:MyUserControlViewModel,IsDesignTimeCreatable=True}"

回答して頂いた皆様、ありがとうございました。

投稿2020/12/04 05:49

firesign

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TN8001

2020/12/04 08:43

「IsDesignTimeCreatable=True」がなければ a のほうも表示されないと思うのですが。
firesign

2020/12/04 09:51

詳しいことはわからないですが、質問時には「IsDesignTimeCreatable」の存在を知りませんでしたので 何か別の要因があるのかもしれません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問