[解決済み] WPFでグリッド行を非表示にする
2022-10-31 01:03:25
質問
シンプルなWPFのフォームに
Grid
が宣言されています。この
Grid
にはたくさんの行があります。
<Grid.RowDefinitions>
<RowDefinition Height="Auto" MinHeight="30" />
<RowDefinition Height="Auto" Name="rowToHide" />
<RowDefinition Height="Auto" MinHeight="30" />
</Grid.RowDefinitions>
という行は
rowToHide
という行にはいくつかの入力フィールドがあり、これらのフィールドが必要ないことがわかったらこの行を隠したいのです。単純に
Visibility = Hidden
を行のすべてのアイテムに設定するだけでも十分簡単ですが、行はまだ
Grid
. 私は
Height = 0
をアイテムに設定してみましたが、うまくいかなかったようです。
このように考えることができます。フォームがあり、そこに "Payment Type" というドロップダウンがあり、ユーザーが "Cash" を選択した場合、カードの詳細を含む行を非表示にしたいと思います。この行をすでに非表示にしてフォームを開始するオプションはありません。
どのように解決するのですか?
行はVisibilityプロパティを持っていないので、他の人が言ったように、高さを設定する必要があります。 また、多くのビューでこの機能が必要な場合、コンバータを使用することもできます。
[ValueConversion(typeof(bool), typeof(GridLength))]
public class BoolToGridRowHeightConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return ((bool)value == true) ? new GridLength(1, GridUnitType.Star) : new GridLength(0);
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{ // Don't need any convert back
return null;
}
}
そして、適切なビューで
<Grid.RowDefinition>
:
<RowDefinition Height="{Binding IsHiddenRow, Converter={StaticResource BoolToGridRowHeightConverter}}"></RowDefinition>
関連
-
[解決済み] ラジオボタンをenumにバインドするには?
-
[解決済み】無料のWPFテーマがあれば教えてください。[クローズド]
-
[解決済み] wpf: ボタンがコマンドによって無効にされたとき、ツールチップを表示する方法は?
-
[解決済み] オーバーレイコントロールを他のすべてのコントロールの上に配置するには?
-
[解決済み] WPF:幅(と高さ)をパーセント値で設定する
-
[解決済み] グリッドカラムの幅・高さを設定する際の「Auto」と「*」の違いは何ですか?
-
[解決済み] XAMLで複数のバリューコンバータを連結する方法はありますか?
-
[解決済み] レンダリング時間やパフォーマンスの面で最も効率的なパネルはどのような順番になりますか?
-
[解決済み] WPFのスライダーを整数の位置にのみスナップさせる方法とは?
-
[解決済み] WPFウィンドウのハンドルを検索する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] SelectedItem、SelectedValue、SelectedValuePathの違いについて
-
[解決済み] Windows 8 ランタイム(WinRT / Windowsストアアプリ / Windows 10 ユニバーサルアプリ)とSilverlightやWPFの比較はどうですか?[クローズド]
-
[解決済み] [Solved] StackPanelの子要素をスペースアウトさせるには?
-
[解決済み] DataTrigger where value is NOT null?
-
[解決済み] WPFバインディングを使用して2つのコマンドパラメータを渡す
-
[解決済み] レンダリング時間やパフォーマンスの面で最も効率的なパネルはどのような順番になりますか?
-
[解決済み] XAML ColumnDefinitionの*(アスタリスク)の意味は?
-
[解決済み] WPF検証エラーの検出
-
[解決済み] XAMLにunicode文字を入れるには?
-
[解決済み] TwoWayまたはOneWayToSourceバインディングは、読み取り専用プロパティでは機能しません。