RadBinaryImage

RadBinaryImage提供一种简单的方法来显示作为二进制数据存储在数据库中的图像。该控件可用于任何数据绑定控件(中继器DataList显示数据表格等)来显示来自数据源中的二值图像字段的图像。该控件使用一个内部http处理程序,该处理程序将图像从二进制源流传输到必须在其中可视化图像的页面。在控件本身和处理程序之间传输二进制流时的存储是HttpContext.Current.Cache对象,图像将缓存在浏览器中。其默认过期时间为2小时(除非控件中的RadBinaryImage嵌套、反弹或重新创建)。这意味着当使用相同的url进行访问时,二进制图像的后续加载将从浏览器缓存中获取。在禁用浏览器缓存的情况下,图像将在服务器上持久保存2分钟,然后才从数据源流到页面。

Telerik UI for ASP。净AJAXNinja image

RadBinaryImage是Telerik UI for ASP。净AJAX,一个具有 120+ 组件的专业级UI库,用于构建现代和功能丰富的 应用程序。想要试用它,请注册一个30天的免费试用。

最重要的性质RadBinaryImage下一段的表格中列出了控制项:

财产 描述
DataValue 属性,该属性指定将从其中作为字节数组传递数据的源字段
高度 指定二值图像的高度
宽度 指定二值图像的宽度
AlternateText 当图像不可用/不能被传输时,将取代图像的文本
工具提示 将图像悬停在浏览器工具提示中显示的文本
AutoAdjustImageControlSize 根据显式设置的宽度缩放图像/高度尺寸,以避免拉伸或模糊效果时,其原始尺寸不适合。缺省值为true。
CropPosition 用于ResizeMode设置为作物.指定裁剪位置,即图像的哪一部分将被裁剪。取值为:上、中、下、左、右
HttpHandlerUrl 可以用来指定自定义http处理程序的位置,它扩展了默认的RadBinaryImagehttp处理程序。当不固定时,RadBinaryImage有自己的处理程序,通过公共调用Telerik.WebResource.axd处理程序。
ImageUrl 否时适用DataValue被指定为优雅降级为普通ASP。网图像模式。当从源返回空值时,将ImageUrl属性可用于指定的默认图像RadBinaryImage
ImageAlign 指定其容器内的图像对齐方式。
ImageStorageLocation 获取或设置一个值,该值指示将存储二进制图像的位置。
ResizeMode 指定如果以像素为单位设置图像的宽度和高度,则是否应自动调整图像的大小。可能的值为没有一个作物填满适合
SavedImageName 设置图像的文件名,如果图像被保存,文件名将出现在浏览器的“保存”对话框中
PersistDataIfNotVisible 如果设置为true,如果控件不可见,则强制图像数据持久化。
VisibleWithoutSource 指定在不存在有效源时是否呈现图像。默认值为真正的

RadBinaryImage设计时间

RadBinaryImage智能标签提供了对控件最常用属性的方便访问。您可以通过右键单击设计窗口中的RadBinaryImage,并从它的上下文菜单中选择“显示智能标签”选项来显示智能标签。radbinaryimagetaskspng

当你想使用RadBinaryImage显示透明的。gif图像时,你应该设置它的ResizeMode财产没有一个.这是因为不支持使用这些文件的图像转换。

这是一个在线演示其中演示了如何集成RadBinaryImage作为ASP。网中继器模板。结果的屏幕截图如下:

radbinaryimage拇指

  
    
公司名称:<%#Eval("CompanyName")%>
< div class = "数据容器”> < ul > <李> <标记>联系人姓名:< /标签> < % # Eval(“联系名称”)% > < /李> <李> < >标签标题:< /标签> < % # Eval (ContactTitle) % > < /李> <李> <标记>城市:< /标签> < % # Eval(“城市”)% > < /李> <李> <标记>:< /标签> < % # Eval(“国家”)% > < /李> <李> <标记>电话:< /标签> < % # Eval("电话")% > < /李> < / ul > < / div > < / div > < /自定义字段> < / ItemTemplate > < / asp:中继器> < div风格= "明确:;">
Baidu
.

的http处理程序RadBinaryImage控件的聪明的标签或在. config文件,以确保在呈现页面时按预期提供该文件。即:

 …< =“Telerik.Web.UI.WebResource添加路径。axd Telerik.Web.UI“type =”。网络Resource" verb="*" validate="false" /> 
<系统。网络服务器>…   

调整

RadBinaryImage支持以下通过ResizeMode属性设置的调整大小模式。

  • 没有一个—禁用“调整大小”(这是默认值)。
  • 作物-超出宽度/高度的部分将被修剪以匹配输出比,其余部分将被缩放(调整尺寸)以匹配目标尺寸。
  • 适合-图像将调整大小以适应目标尺寸。
  • 填满-图像将被调整大小以填充目标尺寸。注意,这可能会扭曲图像。

wai - aria支持

RadBinaryImage控制提供wai - aria支持,可以通过设置EnableAriaSupport服务器属性设置为真正的

RadBinaryImage ARIA属性小写.它们如下表所示:

控制 属性
RadBinaryImage 角色:imgAria-labelAria-atomic

在HTML文档中使用WAI-ARIA的一个问题是它们不进行验证。当您通过W3C Validator运行包含ARIA属性的HTML文档时,它会在任何ARIA属性的结果中显示错误。DOCTYPE声明不包含任何关于WAI ARIA属性的信息,并且您不能拥有一个包含元素、属性和属性值的有效文档,这些属性值在其DTD中没有详细说明。

在WebFarm/WebGarden环境中使用RadBinaryImage

默认情况下RadBinaryImage控件将BinaryImage存储在Cache对象中。如果你的应用程序被配置为在下面列出的任何环境中运行,那么访问二进制映像将会出现问题:

  • 网络农场-应用程序同时运行在多个web服务器上。

  • Web花园-应用程序运行在单个服务器上,但是服务器负载被分配到多个工作进程中(多个进程运行同一个应用程序)。

通常,每个服务器(或每个工作进程)都有一个独立的Cache,这意味着,当页面请求不是由同一个web服务器(工作进程)处理时,BinaryImage将为空,并显示一个灰色图像。

为了避免这种行为,您应该将二进制映像存储在会话中,并配置您的服务器环境以使用进程外会话状态(即。Session对象在不同的进程和服务器之间共享)。最后一个目标可以通过以下步骤实现:

  1. 设置RadBinaryImage。图像StorageLocation财产会话

  2. 设置一个sessionState如在博客文章。

  3. 配置httpHandler的方法如下:

<配置> <系统。web>          

另请参阅

在本文中
Baidu
map