مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

مشکل در ثابت ماندن سایز گریدویو در asp.net

شنبه, 10 بهمن 1394 16:40

مشکل در ثابت ماندن سایز گریدویو در asp.net

سلام وقت بخیر

من برای یک قسمت از سایت از گریدویو استفاده کردم که با اس کیو ال دیتا سورس بایندش کردم.و رویداد rowcommand رو هم فعال کردم ولی وقتی اون رویداد اتفاق می افته سایز سلول های گریدویو به طرز بدی عوض میشه و کل صفحه رو میگیره.چند باری سرچ زدم و دیدم که تو رویداد برای هر ستون سایز تعریف میکنند ولی متاسفانه جواب نداد.ممنون میشم راهنمایی کنید دوستان

<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="id" OnRowCommand="GridView1_RowCommand" CellPadding="4" ForeColor="#333333" GridLines="None" Width="30px" OnRowDataBound="GridView1_RowDataBound">
                                            <rowstyle Height="20px" />
                                            <AlternatingRowStyle Height="20px" Width="20px" BackColor="White" ForeColor="#284775" />
                                            <Columns>
                                                <asp:BoundField DataField="id" HeaderText="ردیف" InsertVisible="False" ReadOnly="True" SortExpression="id" />
                                                <asp:BoundField DataField="name" HeaderText="نام" SortExpression="name" />
                                                <asp:BoundField DataField="family" HeaderText="نام خانوادگی" SortExpression="family" />
                                                <asp:BoundField DataField="code" HeaderText="کد شخص" SortExpression="code" />
                                                <asp:BoundField DataField="mobile" HeaderText="شماره همراه" SortExpression="mobile" />
                                                <asp:BoundField DataField="phone" HeaderText="تلفن" SortExpression="phone" />
                                                <asp:BoundField DataField="adres" HeaderText="آدرس" SortExpression="adres" />
                                                <asp:BoundField DataField="cod_posti" HeaderText="کد پستی" SortExpression="cod_posti" />
                                                <asp:BoundField DataField="email" HeaderText="ایمیل" SortExpression="email" />
                                                <asp:BoundField DataField="date_sabt" HeaderText="تاریخ ثبت" SortExpression="date_sabt" />
                                                <asp:CommandField EditText="حذف" ShowDeleteButton="True" ButtonType="Button" DeleteText="حذف" HeaderText="حذف" />
                                                <asp:ButtonField ButtonType="Button" CommandName="edit" HeaderText="ویرایش" ShowHeader="True" Text="ویرایش" />
                                            </Columns>
                                            <EditRowStyle BackColor="#999999" />
                                            <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" Wrap="False" />
                                            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                                            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
                                            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                                            <SortedAscendingCellStyle BackColor="#E9E7E2" />
                                            <SortedAscendingHeaderStyle BackColor="#506C8C" />
                                            <SortedDescendingCellStyle BackColor="#FFFDF8" />
                                            <SortedDescendingHeaderStyle BackColor="#6F8DAE" />
                                        </asp:GridView>

 این سورس گرید ویو هست. و این هم کد rowcommand:

 protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
    int rowIndex = Convert.ToInt32(e.CommandArgument);
    if (e.CommandName == "edit")
    {           
        GridViewRow row = GridView1.Rows[rowIndex];

        //Fetch value of Name.
        //string name = (row.FindControl("Name") as TextBox).Text;

        //Fetch value of Country
        Session["id"] = GridView1.Rows[rowIndex].Cells[0].Text.Trim();
        string cod = GridView1.Rows[rowIndex].Cells[0].Text.Trim();
        //cod = GridView1.Rows[rowIndex].Cells[1].Text.Trim();

        sabt_car = sabt.select_ashkhas(int.Parse(cod));
        Panel_ashkhas.Visible = true;
        Text_family.Text = sabt_car.Rows[0]["family"].ToString();
        Text_name.Text = sabt_car.Rows[0]["name"].ToString();
        Text_code.Text = sabt_car.Rows[0]["code"].ToString();
        Text_mobile.Text = sabt_car.Rows[0]["mobile"].ToString();
        Text_phone.Text = sabt_car.Rows[0]["phone"].ToString();
        Text_adres.Text = sabt_car.Rows[0]["adres"].ToString();
        Text_codposti.Text = sabt_car.Rows[0]["cod_posti"].ToString();
        Text_email.Text = sabt_car.Rows[0]["email"].ToString();

    }
}

 

شنبه, 10 بهمن 1394 21:12

سلام

شما width گریدتون رو به 3000  مقدار دهی کنید بعد برای دیوی که گردیدتون داخلش هست رو اور فلو  overflow:scroll بدهید مثال

 

 <div style="overflow:scroll" >
                <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource4" Width="1000px" AutoGenerateColumns="False" DataKeyNames="id">
                    <Columns>

شنبه, 10 بهمن 1394 22:01

مرسی ولی تست کردم نشد باز هم وقتی event اتفاق می افته سایزش بهم میریزه.راه دیگه ای ب نظرتون نمیرسه؟؟

 

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید