【发布时间】:2014-05-24 02:22:58
【问题描述】:
尝试选项 1
如何使图钉的内容溢出图钉图标。看来我只能显示适合图钉的非常小的文本。我试过简单地将内容值设置为文本,创建一个 TextBlock 并将 TextBlock 设置为内容,但都产生相同的结果。
pushpin.Background = new SolidColorBrush(Colors.Yellow);
pushpin.Foreground = new SolidColorBrush(Colors.Black);
TextBlock ppContent = new TextBlock();
//ppContent.TextWrapping = TextWrapping.WrapWithOverflow;
ppContent.Text = "heyyyyyyyy yyyyyyyyy";
ppContent.Width = 333;
ppContent.Height = 333;
pushpin.Content = ppContent ;
pushpin.Tag = pinLabel;
pushpin.Location = location;
如上图所示,文字被截断了!
尝试选项 2
我尝试的另一条路线是定义ControlTemplate。通过在Application.Resources中定义ControlTemplate,我可以成功让ControlTemplate显示新图标没问题:
<ControlTemplate x:Key="PushPinTemplate">
<Grid>
<TextBlock Name="textBlock1" Text="{Binding Content}" Grid.Column="0" Grid.Row="0" Foreground="Black"></TextBlock>
<Rectangle Width="10" Height="10" Margin="0 35 0 0">
<Rectangle.Fill>
<ImageBrush ImageSource="pack://application:,,,/Images/DragHandleWhite.gif"/>
</Rectangle.Fill>
</Rectangle>
</Grid>
</ControlTemplate>
并像这样应用模板;
pushpin.Template = (ControlTemplate)Application.Current.Resources["PushPinTemplate"];
现在的问题是,我无法从后面的代码访问 textBlock1 以将值设置为“heyyyyyyyy yyyyyyyyy”。
非常感谢任何帮助,我已经被这个问题困扰了很长时间:(
【问题讨论】:
标签: c# wpf controltemplate bing-maps