Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用弹出窗口在网格中显示二进制图像_C#_Jquery_Asp.net_Datagrid - Fatal编程技术网

C# 用弹出窗口在网格中显示二进制图像

C# 用弹出窗口在网格中显示二进制图像,c#,jquery,asp.net,datagrid,C#,Jquery,Asp.net,Datagrid,我的页面上有一个asp.net数据网格。此网格将有三列。身份证、日期和照片 photo列是表VARBINARY(MAX)上的实际列 当用户单击照片(可以是文本或图标)时,我想打开一个jquery模式,照片的大小为全尺寸。用户可以右键单击并保存(如果需要) 我以前从未这样做过。尝试在网上搜索,但我只找到了将图像显示在列中的示例,这不是我想要的。请参阅下面的代码示例,以网格形式显示小图像,并通过单击将其显示为大图像 <asp:GridView runat="server" ID="gvData

我的页面上有一个asp.net数据网格。此网格将有三列。身份证、日期和照片

photo列是表VARBINARY(MAX)上的实际列

当用户单击照片(可以是文本或图标)时,我想打开一个jquery模式,照片的大小为全尺寸。用户可以右键单击并保存(如果需要)


我以前从未这样做过。尝试在网上搜索,但我只找到了将图像显示在列中的示例,这不是我想要的。

请参阅下面的代码示例,以网格形式显示小图像,并通过单击将其显示为大图像

<asp:GridView runat="server" ID="gvData" AutoGenerateColumns="False">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <img src='<%# "data:image/gif;base64," + Eval("Data")  %>' onclick="DisplayImage(this)" height="10" width="10" />
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

<%--Popup dialog to display large image--%>
<div id="dialog" style="display: none">
    <img height="100" width="100" id="imgLargeImage" />
</div>

检查这个:谢谢!这样我就找到了显示对话的方法。但是现在,如何在对话框上显示图像?如果我确实在列本身上显示图像,我可以在对话框中重新创建更大的图像吗?看看我的答案。别忘了投票,并把它标为答案。谢谢。为了将来的参考,在我的例子中,我做了一些小的区别。我使用http处理程序获取图像的字节。这两个例子指导了我:这是件好事。我本想提出同样的建议,但我想这将是你的下一个问题:)
<script type="text/javascript">
    function DisplayImage(ctrl) {

        document.getElementById('imgLargeImage').src = ctrl.src;

        $("#dialog").dialog({
            title: "View Details",
            buttons: {
                Ok: function () {
                    $(this).dialog('close');
                }
            },
            modal: true
        });
    }
</script>