2010-09-17 116 views
0

我在運行時創建了一個模板化的RadioButton。初始化模板化的RadioButton之後,我設置了DataContext和Tag屬性,然後在StackPanel中添加此按鈕。問題是模板綁定不起作用。下面是XAML和後面的代碼。如果我在XAML中爲這些屬性賦值,所有這些工作。有任何想法嗎?動態控件的模板綁定

代碼: TemplatedRadioButton commandButton = new TemplatedRadioButton(); commandButton.DataContext =「bla」; //我會的一些txt。 commandButton.Tag = MyImage; //這也是我在運行時創建的ImageIcon。 MyStackPanel.Children.Add(commandButton);

XAML:

回答

0

對不起: 代碼: TemplatedRadioButton的commandButton =新TemplatedRadioButton(); commandButton.DataContext =「bla」; //我會的一些txt。 commandButton.Tag = MyImage; //這也是我在運行時創建的ImageIcon。 MyStackPanel.Children.Add(commandButton);

XAML:

<Grid Margin="0 8 0 1"> 
    <Grid.RowDefinitions> 
    <RowDefinition Height="4*"/> 
    <RowDefinition Name="textheight" Height="2*"/> 
    </Grid.RowDefinitions> 
<ContentPresenter x:Name="Content" ContentSource="Tag" Margin=" 4 4 6 6" HorizontalAlignment="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/> 

    <TextBlock Name="caption" Text="{TemplateBinding DataContext}" FontSize="11" FontFamily="/Fonts/#Lucida Grande" Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Bottom" Foreground="#FF313131" Margin="0 2 0 6"/> 
</Grid> 
</Border>