silverlight:silverlight的How To:访问Control控件模板里的Control控件

  假设buttonControl控件应用了如下Control控件模板:

<ControlTemplatex:Key="StartActivity"TargetType="Button">
      <GridWidth="Auto"Height="62"Margin="0,0,0,0">
        <TextBlockHeight="0"Margin="0,0,0,0"VerticalAlignment="Bottom"Text=""TextWrapping="Wrap"x:Name="tbLabel"RenderTransformOrigin="0.5,0.5"HorizontalAlignment="Center"Foreground="#FF0507FA">
        </TextBlock>
      </Grid>
    </ControlTemplate>


  那么如果想在代码里访问模板里名为tbLabelTextBlockControl控件该如何写代码呢?

  Control控件基类Control有个叫GetTemplateChild思路方法但是该思路方法是Protected型所以很显然我们必须继承基类并且重载OnApplyTemplate来该思路方法如下:

publicActivityControl:Button
  {
    publicoverridevoidOnApplyTemplate
    {
      base.OnApplyTemplate;
      //getthetextblockcontrolfromtemplate
      TextBlocklabel=GetTemplateChild("tbLabel")asTextBlock;
    }
  }


Tags:  silverlight2 silverlight.2.0 silverlight是什么 silverlight

延伸阅读

最新评论

发表评论