ファイル名とファイルのパス(画像およびPDF形式のファイル)を含むグリッドビューがあり、その下にテンプレートフィールドを使用し、その下に1つの画像ボタンを配置しました。その画像ボタン、つまり表示ボタンをクリックすると、選択したファイルを新しいウィンドウで開きたいと思います。
ここに私のコードがあります:
protected void GVViewFile_SelectedIndexChanged(object sender, EventArgs e)
{
int id = GVViewFile.SelectedIndex;
string path = GVViewFile.Rows[id].Cells[2].Text.ToString();
Response.Redirect("D:\UploadedAttachment\AT\MRD\AT0520130008_15-05-13-03-57-12.pdf");
Response.Write("<script>");
Response.Write("window.open('" + path + "','_blank', ' fullscreen=yes')");
//Response.Write("window.open(" + path + ",'_blank')");
Response.Write("</script>");
}
しかし、新しいウィンドウで開くことができませんでした。私のパスは、response.write() 内と同じ値を返します。例として使用するとresponse.write("images/UserDetails.pdf");
、pdfページが表示されます..しかし、フルパスは使用されません。'\'
また、実際のフルパスを使用して新しいウィンドウに画像またはPDFを表示する方法が間違っていることも示していresponse.write();
ます。window.openがエラーを出していることでも助けてください。 gridview.help からのパスをください....
私のグリッドビューコード:
<asp:GridView ID="GVViewFile" runat="server" AutoGenerateColumns="False"
DataSourceID="DSforgridview" onselectedindexchanged="GVViewFile_SelectedIndexChanged"
HeaderStyle-BackColor="#CC6600" HeaderStyle-ForeColor="White"
PagerStyle-BackColor="#CC6600" PagerStyle-ForeColor="White" CellPadding="3"
CellSpacing="3" PagerStyle-Width="4" PagerStyle-Height="4"
BorderColor="#FF6600" BorderStyle="Solid">
<Columns>
<asp:TemplateField ShowHeader="false">
<ItemTemplate>
<asp:ImageButton ID="btnView" runat="server"
CausesValidation="False" CommandName="Select"
ImageUrl="~/Images/view.gif" ToolTip="View File" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FileType" HeaderText="FileType"
SortExpression="FileType" />
<asp:BoundField DataField="FileLocationPath" HeaderText="FileLocationPath"
SortExpression="FileLocationPath" />
</Columns>
<HeaderStyle BackColor="#CC6600" ForeColor="White"></HeaderStyle>
<EmptyDataTemplate>No Records Found.</EmptyDataTemplate>
</asp:GridView>