2017-09-12 12 views
1

내가이 남아있는 기본 "영어"언어 GridViewGridview in "English"는 (의 .resx) 레이아웃은 동일하지

나는 DropDownList에 "우르두어"를 사용하여 언어를 변경하는 경우 리소스 파일이 언어를 "Urdu"로 변경하지만 셀 정렬은 동일하게 유지되지 않습니다. Gridview in "Urdu"

"우르두어"는 레이아웃을 변경하는 이유 인 RTL 언어이기 때문에 생각합니다. GridView의 레이아웃을 보존하고 싶습니다. 당신의 GridView의 당신의 모든 템플릿 HeaderStyle-Width 또는 ItemStyle-HorizontalAlign를 정렬/설정할 수 있습니다

<asp:GridView DataKeyNames="id" Width="455px" ID="gvProducts" runat="server" AutoGenerateColumns="False" CssClass="grid" BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px" CellPadding="3" DataSourceID="dsCandidate" GridLines="Horizontal" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" meta:resourcekey="gvProductsResource1"> 
        <AlternatingRowStyle BackColor="#F7F7F7" /> 
        <Columns> 
         <asp:BoundField DataField="id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="id" meta:resourcekey="BoundFieldResource1" /> 
         <asp:BoundField DataField="name" HeaderText="Name" SortExpression="name" meta:resourcekey="BoundFieldResource2" /> 
         <asp:TemplateField HeaderText="Qualification" meta:resourcekey="TemplateFieldResource1"> 
          <ItemTemplate> 
           <asp:Label ID="lblQuali" runat="server" Text='<%# Eval("Q_Type") %>' meta:resourcekey="lblQualiResource1"></asp:Label> 
          </ItemTemplate> 
          <EditItemTemplate> 
           <asp:DropDownList ID="ddl" runat="server" DataSourceID="dsQualification" DataValueField="Q_Id" DataTextField="Q_Type" SelectedValue='<%# Bind("Q_Id") %>' meta:resourcekey="ddlResource1"></asp:DropDownList> 
          </EditItemTemplate> 
         </asp:TemplateField> 
         <asp:BoundField DataField="address" HeaderText="Address" SortExpression="address" meta:resourcekey="BoundFieldResource3" /> 
         <asp:CheckBoxField DataField="active" HeaderText="Active" SortExpression="active" meta:resourcekey="CheckBoxFieldResource1" /> 
        </Columns> 
        <FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" /> 
        <HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" /> 
        <PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" /> 
        <RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Center" /> 
        <SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" /> 
        <SortedAscendingCellStyle BackColor="#F4F4FD" /> 
        <SortedAscendingHeaderStyle BackColor="#5A4C9D" /> 
        <SortedDescendingCellStyle BackColor="#D8D8F0" /> 
        <SortedDescendingHeaderStyle BackColor="#3E3277" /> 
       </asp:GridView> 

답변

0

: 당신이 여기

감사하는 코드입니다.

<asp:BoundField HeaderStyle-Width="500px" ItemStyle-HorizontalAlign="Left" /> 

또는 같은 당신은 RowDataBound 이벤트에 동적으로 작업을 수행 할 수 있습니다 내 문제가 해결 열의 헤더의 폭을 고정

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    e.Row.Cells[0].Width = Unit.Pixel(100); 
    e.Row.Cells[0].HorizontalAlign = HorizontalAlign.Left; 
} 
+1

감사 뒤입니다. –