| 框架 | 屬性名 | 類型 | 隱藏值 | 顯示值 |
|---|---|---|---|---|
| WinForms | Visible | bool | false | true |
| WPF | Visibility | Visibility 枚舉 | Visibility.Collapsed / Hidden | Visibility.Visible |
button1.Visible = false; // 隱藏佔用空間
button1.Visible = true; // 顯示
// 隱藏且不佔用佈局空間(推薦)
button1.Visibility = Visibility.Collapsed;
// 隱藏但保留佈局空間
button1.Visibility = Visibility.Hidden;
// 顯示
button1.Visibility = Visibility.Visible;
<Button x:Name="btnSubmit" Content="提交"
Visibility="{Binding IsAdmin, Converter={StaticResource BoolToVisibilityConverter}}" />
public class BoolToVisibilityConverter : IValueConverter {
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) {
return (bool)value ? Visibility.Visible : Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) {
return (Visibility)value == Visibility.Visible;
}
}
WinForms 用 `bool Visible`,WPF 用 `Visibility` 枚舉。WPF 的 `Collapsed`/`Hidden` 區別是佈局佔位行為,按需選擇。