修剪标签中的显示内容

时间:2014-07-09 05:25:34

标签: asp.net devexpress

我需要在工具提示中将其他文本显示为椭圆。

我正在使用DevExpressDataView。

在设计中:

`<asp:Label ID="ModelDescLabel" runat="server" style="overflow:hidden;text-overflow:ellipsis;" Text='<%# Eval("Desc")%>' Font-Bold="False" ToolTip='<%# Eval("Desc")%>' >`

这将显示工具提示,无论文本的长度和所有单元格如何。 因此,我需要在事件中编写逻辑,以便仅在超出限制时显示工具提示。由于我使用的是DEVExpressDataView,因为AspxDataview没有任何此类事件,所以OnHtmlRowCreated相当于什么?

1 个答案:

答案 0 :(得分:1)

DesignPage

<asp:Label ID="ModelDescLabel" runat="server" style="overflow:hidden;text-overflow:ellipsis;"  OnInit="ModelDescLabel_Init" >

代码隐藏:

protected void ModelDescLabel_Init(object sender, EventArgs e)
{
    ASPxLabel label = (ASPxLabel)sender;
    DataViewItemTemplateContainer c = (DataViewItemTemplateContainer)label.NamingContainer;
    string categoryDesc = DataBinder.Eval(c.DataItem, "CategoryDesc").ToString();
    if (categoryDesc.Length != 0 || categoryDesc.Length != null)
    {
         if (categoryDesc.Length > 260)
         {
            label.Text = categoryDesc.Trim().Substring(0, 240) + "...";
            label.ToolTip = categoryDesc.Replace("<b>", "").Replace("</b>", "");;
         }
         else
           label.Text = categoryDesc;
    }
}