RadGrid(Telerik Web버전) Min Header

익스플러워 크기 변경시에도 최소 크기 보장? 안된다 - -

4일 걸렸음 - -. 웹페이지 크기에 따라 크기 줄이기도해보기도 했으나  --

 

HeaderStyle-Width에 그흔한 Min-Width 가 없다 -- "*"넣으면.. 당연히 에러 --

 

그러면 최소 크기 보장위해 2개 컬럼 생성. 100px 그리고 100%.

두개를 연결하면 최소 크기 보장됨.

다만 두개 머지시켜줘야함..

아이템은 잘나오나 .

헤더는.. 버그가 있음- -

 

그래서 PreRender에서 수정.

protected void rgClnCenter_PreRender(object sender, EventArgs e)
 {

 #region // 렌더링시 체크
  if (sender is RadGrid)
  {
   try
   {
    var vrMtv = ((RadGrid)sender).MasterTableView.Items;

    foreach (var vrIn in vrMtv)
    {
     string strV = vrIn.GetType().ToString();

     if (vrIn is GridDataItem)
     {
      ((GridDataItem)vrIn)["DeptNmCom"].ColumnSpan = 2;
      ((GridDataItem)vrIn)["DeptNmSpan"].Visible = false;
     }
    }
   }
   catch
   { }
  }

GridItem[] groupHeaders = ((RadGrid)sender).MasterTableView.GetItems(GridItemType.Header);

  //헤더중 첫줄만 적용. 헤더가 멀티로 2줄입니다. 1줄일경우 RowSpan 사용안하심 됩니다.
  int iRow = 0;
  foreach (GridItem item in groupHeaders)
  {
   GridHeaderItem header = (GridHeaderItem)item;
   try
   {
    if (iRow == 0)
    {
     header["DeptNmCom"].ColumnSpan = 2; //헤더 2개를 머지
     header["DeptNmSpan"].RowSpan = 2; //로 머지 안하면 뒤쪽에 줄이 밀려보여줌. 헤더가 멀티로 2줄이여서 ^^
     header["DeptNmSpan"].Attributes.Add("style", "display:none;"); //화면에서 보이지 않도록 스타일 줌.. Visible주면 깨져 보임. --
    }
    iRow++;
   }
   catch
   {}
  }

#endregion
 }

 적용전 ..  윈도우 익스플로러 최소 일경우 "진료과"가 안보임

 

적용후 ... 윈도우 익스플로러 최소 일경우도 "진료과"가 보임

최대로 늘릴경우 크기가 늘어남.

 

 

 

 

 

Posted by 말없제이
,