2014-07-09 2 views
0

타원으로 툴팁에 추가 텍스트를 표시해야합니다.레이블에 표시 내용을 자르십시오

DevExpressDataView를 사용하고 있습니다. 설계에서

: 이것은 관계없이 텍스트의 길이의 모든 셀에 대한 도구 팁을 표시합니다

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

. 그래서 필자는 이벤트가 제한을 초과하는 경우에만 툴팁을 표시하기 위해 이벤트에 로직을 작성해야합니다. 이후 AspxDataview 같은 이벤트가없는 OnHtmlRowCreated 해당하는 DEVExpressDataView 사용하고 있습니까?

답변

0

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; 
    } 
}