簡體   English   中英

獲得對RadioButton WPF的控制

[英]Getting Control of RadioButton WPF

這是我在xaml中所擁有的:

<DataGrid Name="dataGrid">
    <DataGridTemplateColumn Header = "Base" Width="100">
        <DataGridTemplateColumn.CellTemplate>
             <DataTemplate>
                 <Grid>
                     <Grid.ColumnDefinitions>
                         <ColumnDefinition Width="50"/>
                         <ColumnDefinition Width="*" />
                     </Grid.ColumnDefinitions>
                     <RadioButton Grid.Column="0" GroupName="{Binding Index}" Name="ABCD" Content="ABCD" IsChecked="True" Checked="radioButton_Checked"/>
                     <RadioButton Grid.Column="1" GroupName="{Binding Index}" Name="XYZ" Content="XYZ" Checked="radioButton_Checked" />
                  </Grid>
             </DataTemplate>
        </DataGridTemplateColumn.CellTemplate>
   </DataGridTemplateColumn>
</DataGrid>

以下是某些函數(任何)xaml.cs中的一些代碼:

DataGridRow row = (DataGridRow)dataGrid.ItemContainerGenerator.ContainerFromIndex(i);
FrameworkElement radioButton = dataGrid.Columns[0].GetCellContent(row) as FrameworkElement;
radioButton.Visibility = Visibility.Hidden;

當我隱藏整個單元格時,我可以隱藏可見性。 但是我想在運行時將單選按鈕的內容從“ XYZ”更改為“ HAHAHA”。 我怎樣才能做到這一點?

您可能可以使用值轉換器來實現此目的。 這可用於根據索引值更改名稱。

public class IndexToXYZOrHaHaHaConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        var index = (int) value;
        if (index > 10)
        {
            return "XYZ";
        }
        return "HaHaHa";
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}

您需要通過將靜態資源添加到資源字典中來創建類的實例。

<local:IndexToXYZOrHaHaHaConverter x:Key="IndexToXYZOrHaHaHaConverter"/>

然后,您需要將單選按鈕的內容從“ xyz”更改為此;

Content="{Binding Index, Converter={StaticResource IndexToXYZOrHaHaHaConverter}}"

這應該根據索引在xyz和HaHaHa之間動態切換值。 在示例中,我給出的值取決於該值是大於還是小於10,這可能不是您想要的值,因此您必須修復邏輯。 我還假設index是一個整數,如果index是其他內容,您可能也需要更改它。

轉換器非常適合根據綁定值設置屬性,綁定值並不直接對應於綁定值,例如將字符串轉換為顏色。

希望這個對你有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM