【问题标题】:Binding Image URL with RadImageButton使用 RadImageButton 绑定图像 URL
【发布时间】:2018-11-01 07:54:03
【问题描述】:

我在 Telerik 的网站上问过,但那里显然没有足够的流量来生成答案。

我正在尝试将 asp ImageButton 转换为 RadImageButton,因为有一些有用的功能可以让我的生活更轻松一些。但是,图像 URL 的绑定不起作用 - 至少我这样做的方式是这样。

所以这行得通(两者都在同一个 ListView 中):

<asp:ImageButton ID="im" runat="server" ImageUrl='<%# Eval("ImgUrl") %>' />

但是这个:

<telerik:RadImageButton runat="server" ID="itemImageButton" '>
    <Image Url='<%# Eval("ImgUrl") %>' />
</telerik:RadImageButton>

给我一​​个错误,例如 Telerik.Web.UI.ButtonBase.ButtonImage 没有 DataBinding 事件。

如果有人可以为我指明正确的方向以使用 RadImageButton 控件完成此操作(如果可能),我将不胜感激。

【问题讨论】:

    标签: c# data-binding kendo-ui telerik telerik-ajax


    【解决方案1】:

    我最近遇到了完全相同的问题。显然,某些控件中的子对象/属性不是 DataBound-able。

    您必须在 telerik:RadImageButton 标记本身内对图像 URL 进行绑定,因此不要使用 &lt;Image Url="" /&gt; 部分,而是将其放在 Image-Url 属性中:

    <telerik:RadImageButton runat="server" ID="itemImageButton" Image-Url='<%# Eval("ImgUrl").ToString() %>'>
    </telerik:RadImageButton>
    

    您可以省略 .ToString() 部分。

    我从asp:ImageButton 切换到telerik:RadImageButton 时遇到的另一个“问题”是必须明确设置widthheight。没有它,它就无法开箱即用。图像(图标)格式不正确,即使它是 24x24 大小的。我最终设置了width=""height="" 属性,但添加CssClass 并使用样式也应该可以。

    【讨论】:

    • 完美!非常感谢!我喜欢这个比绑定列表视图的项目数据绑定事件并在那里处理它要好得多。由于某种原因,Intellisense 中没有为我显示 Image-Url 属性。我同意大小的事情。当我发现这个时,我查看了输出,发现它没有像我预期的那样添加图像元素,而是添加了内联样式以在容器上创建背景图像。我能想到的动态解决它的唯一方法是在 RadImageButton 或数据容器(在我的情况下为 RadListView)的数据绑定事件中处理它。
    猜你喜欢
    • 1970-01-01
    • 2011-03-10
    • 1970-01-01
    • 1970-01-01
    • 2014-05-18
    • 1970-01-01
    • 2023-04-04
    • 2020-09-29
    • 1970-01-01
    相关资源
    最近更新 更多