用C#中的HyperlinkBut​​ton包装图像

时间:2014-01-26 00:51:42

标签: c# windows-8 hyperlink

我可以创建一个文本c#超链接......

HyperlinkButton sunday_title = new HyperlinkButton();
sunday_title.Content = "Sunday (" + sunday.ToUpper() + ")";
sunday_title.Click += sunday_link_Click;

但是如何创建图形超链接?我的第一个倾向是小时候使用这个形象,但这似乎不可能。

以下是创建图形的c#代码......

Image sunday_image = new Image();
sunday_image.Source = background_flcb;
Border sunday_border = new Border();
sunday_border.Child = sunday_image;

最终,我想整整grid一个链接(但我不认为这是可能的)。但是,目前,我很高兴只是将图像作为链接。

Similar questions已得到解决,但大多数答案都是针对XAML的。我想用c#做这件事。

如果它有所不同,这适用于Windows 8应用程序(尽管相同的逻辑应适用于Windows Phone应用程序)。

1 个答案:

答案 0 :(得分:1)

在大多数情况下,XAML可以轻松转换为C#代码。例如,类似问题的XAML解决方案链接在上面(简化):

<HyperlinkButton>
    <HyperlinkButton.Background>
        <ImageBrush ImageSource="SplashScreenImage.jpg"/>
    </HyperlinkButton.Background>
</HyperlinkButton>

等同于以下C#代码:

var hyperlinkButton = new HyperlinkButton();
hyperlinkButton.Background = new ImageBrush{ImageSource = background_flcb};
来自同一链接的

Other suggested approach就是简单地使用Image控件并处理它的Click / Tap事件以导航到链接目标:

Image sunday_image = new Image();
sunday_image.Source = background_flcb;
Border sunday_border = new Border();
sunday_border.Child = sunday_image;
sunday_image.Tapped += sunday_image_tapped;

无论如何,我不知道这些方法是否也适用于Windows 8。试一试吧。祝你好运。