0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

TextInputコントロール Defaultプロパティ ""と空白のトラップ

Posted at

アプリを開発するときによく設定する
ButtonコントロールDisplayModeプロパティとして
TextInputコントロールのTextが入力されていないときに

DisplayMode.Disabled

にする事があると思います。

適当にTextInputとButtonコントロールを設置すると以下の様になります。
image.png

何も考えずDefaultプロパティを全部消して
空白にしてButtonコントロールDisplayModeプロパティを以下の様にすると

image.png
image.png

If(TextInput.Text=Blank(),
    DisplayMode.Disabled,
    DisplayMode.Edit
)

image.png
image.png

この様に意図したとおりの動きになった様に見えます。

ところがどっこい←(これが言いたかっただけ)

この入力したTextを消してみると
image.png

うげげ?ButtonコントロールDisplayModeプロパティ

DisplayMode.Disabled

にならない!!!!!

この原因はたまに陥る""と空白の違いで
一度TextInputのTextを変更してすべてのTextを消した場合
空白ではなく""として扱われるからです。

そのため、このような場合にはDefaultプロパティは""と記載して
ButtonコントロールのDisplayModeプロパティは

If(TextInput.Text="",
    DisplayMode.Disabled,
    DisplayMode.Edit
    )

と記載するとうまく動作します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?