15

ここに画像の説明を入力

C# + XAML を使用して Windows ストア アプリを開発しています。プロパティTextWrappingを に設定して TextBox を追加するとNoWrap、フォーカスされると TextBox の末尾に「X」が表示されます。

したがって、この「X」を削除する必要があり、TextBox はラップできません。

4

6 に答える 6

11

誰もが言ったように、本当に正当な理由がない限り、「X」を削除すべきではありません。

X を削除するには、TextWrapping を「NoWrap」に設定する代わりに、TextWrapping="Wrap" に設定する必要があります。

于 2013-02-27T01:48:06.233 に答える
6

このドキュメントからわかるように、この機能は非常によく説明されています。Javascript、Html、または Css を利用するときにわかるように、そのフィールドを削除するための非常に迅速で簡潔な方法があります。Cascading Stylesheets で簡単に無効にできるためです。

表示する画像。 編集する。

スタイルシート内で、実際に非常に簡単に変更できます。

input[type=text]::-ms-clear
{
            border: 2px solid orange
}

ほとんどのボタンは、アプリケーション内で一貫したデザインを実現するために非常に使いやすくなっています。しかし、それはあなたの質問の答えにはなりません。C#/XAML でどのように無効にしますか?

Textbox コンポーネントの内部には、視覚的な状態と可視性を示すコードがあります。コードのそのセクションをコメントアウトすると、X が無効になります。ここに例を示します

前述のように、これは非常に気の利いた便利なツールです。特にタッチスクリーンデバイスでは。Microsoft の統一に準拠するだけでなく、そのフィールドの項目を簡単に削除できるため、UI がすっきりします。

削除しないことをお勧めします。うまくいけば、これで問題が少し説明されます。

于 2013-02-26T19:05:09.427 に答える
6

X は、アクセシビリティ機能として存在します。すべてのテキストを選択して削除を押すのは難しく、複数の手順が必要になるため、タッチ デバイスでボックスを簡単にクリアできます。

したがって、非常に重要な理由がない限り、これを無効にしないでください。「X」を無効にするプロパティはなく、製品チームはそれを無効にするつもりはありません。ただし、教育目的で、 Styleを変更して無効にできることを示します。

Expression Blend で、テキスト ボックスを右クリックし、[テンプレートの編集] -> [コピーの編集] を選択します。テンプレートに「NoXTextBox」のような名前を付けて、必ずアプリ レベルで保存してください (そうしないと、現在のページでしか使用できなくなります)。

Blend は、ページではなく TextBox の外観を編集するモードに切り替わります。[オブジェクトとタイムライン] パネルに、 DeleteButtonという要素が表示されます。そのボタンをテンプレートから削除して、作業を保存できます。[オブジェクトとタイムライン] パネルの上部にある上向き矢印の付いた水平線のようなボタンをクリックします (このボタンにカーソルを合わせると、[範囲を [ページ] に戻す] と表示されます)。テキスト ボックスの編集ではなく、ページの編集に戻ります。

このようなテキスト ボックスをさらに作成するには、コピーして貼り付けるか、スタイルブランチの下のブレンド ツールボックスにカスタム 'NoXTextBox' を表示します。

繰り返しますが、本当に正当な理由がない限り、これを無効にしないでください。正直なところ、ユーザーが Windows ストア アプリケーションに期待する機能を壊しているため、これを行う正当な理由が思いつきません。私は主にあなたの質問に答えたいと思っていたので、組み込みのコントロールを変更する方法の感触をつかむことができました.

開発サポート、設計サポート、その他の優れた機能が進行中: http://bit.ly/winappsupport

于 2013-02-26T18:49:24.903 に答える
0

コントロール テンプレートを編集し、テンプレート内の DeleteButton とその参照を削除します。

于 2014-12-03T09:48:42.170 に答える