2012-02-12 4 views
0

radgrid에 열의 문자열 길이를 자르라고 알리는 방법이 있습니까? 메신저 radgrid를 사용하여 여러 (많은, 많은) 필드가있는 SQL보기에서 데이터를 표시하므로 모든 gridboundcolumns를 설정하지 않고 autogeneratefields = "true"를 사용하고 싶거나 itemdatabound에서 잘린 부분을 사용하고 싶습니다. 이벤트 또는 그런 것.자동 생성 열이있는 radgrid에서 문자열의 최대 길이를 radgrid로 설정

이 방법으로도 물어볼 수 있다고 가정합니다.보기에서 데이터를 다시 얻고 필드의 첫 x 문자 수만 반환하는 좋은 방법은 무엇입니까? 내가 말했듯이 많은 분야가 있으므로 나는 내 칼럼의 모든 컬럼을 코드화하고 하위 문자열이나 그와 비슷한 것을하고 싶지 않다. ...

어떤 생각?

감사합니다.

답변

0

확실하지 내 질문에 감각을 만들었지 만, 경우에 사람이 비슷한 시나리오를 가로 질러 오면, 내 개체의 속성을 통해 루핑 결국하고 radgrid에 데이터 소스를 설정하기 전에 문자열을 잘립니다.

public static void SM_Dump_TruncStrings(ref List<myDataType> dump, int maxLength, bool addEllipses) 
    { 
     foreach (var sm in dump) 
     { 
      PropertyInfo[] infos = sm.GetType().GetProperties(); 
      foreach (var info in infos) 
      { 
       if (info.PropertyType == typeof(string)) 
       { 
        var origValue = info.GetValue(sm, null) as string; 
        if (origValue != null && origValue.Length > maxLength) 
        { 
         var newVal = origValue.Substring(0, maxLength); 
         if (addEllipses) 
          newVal += "..."; 
         info.SetValue(sm, newVal, null); 
        } 
       } 
      } 
     } 
    } 

이 방법은 여기에서 찍은 :

녹슨 How to iterate through each property of a custom vb.net object?

환호를,

관련 문제