我使用的是带有mvvm模式的Silverlight 5。在xaml页面中,我有一个超链接按钮和图像。如果我点击名为"Preview“按钮,意味着图像或任何文件必须在新选项卡浏览器中打开。
XAML代码:
<Image Source="{Binding Image}"/>
<HyperlinkButton Content="Preview" Width="60" Height="26"
HorizontalAlignment="Center"
VerticalAlignment="Center"
TargetName="_blank"
Name="HyperlinkButton"
Background="Transparent"
Click="HyperlinkButton_Click">
</HyperlinkButton>VIEWMODEL代码
void ChooseHyperExecute(object param)
{
WebBrowser br = new WebBrowser();
SampleViewModel dt = param as SampleViewModel;
string ma = dt.String_Value;
br.Navigate(new Uri(Application.Current.Host.Source, string.Format("./Images/{0}", ma)));
}但它不起作用。
发布于 2012-11-05 22:26:00
您需要使用HtmlWindow.Navigate方法:
void ChooseHyperExecute(object param)
{
SampleViewModel dt = param as SampleViewModel;
string ma = dt.String_Value;
var externalUri = new Uri(Application.Current.Host.Source,
string.Format("./Images/{0}", ma));
var absoluteUri = new Uri(externalUri, UriKind.Absolute);
System.Windows.Browser.HtmlPage.Window.Navigate(absoluteUri, "_blank");
}https://stackoverflow.com/questions/13231056
复制相似问题