PDA

View Full Version : Fix كردن ارتفاع يك گريد ويو



aftab_mahtab
دوشنبه 30 فروردین 1389, 09:35 صبح
با عرض سلام خدمت تمامي اساتيد
من ميخوام ارتفاع گريد ويو رو ثابت نگه دارم و مثلا وقتي سايز صفحه 10 باشه با بودن 5 ركورد ، ديگه صفحه كوچيك نباشه.
ممكنه سوال پيش پا افتاده اي كرده باشم ، چون من يه تازه كارم . قبلا از راهنماييهاي شما عزيزان تشكر ميكنم .
ممنون

bahman_akbarzadeh
دوشنبه 30 فروردین 1389, 09:45 صبح
اگر ميخوايد صفحه كوچيك نباشه، به تگ بالاي گريد ارتفاع بديد (مثلا به همون سلول جدول)
در ضمن، خود گريد Height داره و فكر ميكنم همين هم جواب بده.

aftab_mahtab
دوشنبه 30 فروردین 1389, 11:11 صبح
لطفا به اين تصوير زير توجه كنيد ، منظورم اين هست .

Mostafa_Dindar
دوشنبه 30 فروردین 1389, 11:28 صبح
با عرض سلام خدمت تمامي اساتيد
من ميخوام ارتفاع گريد ويو رو ثابت نگه دارم و مثلا وقتي سايز صفحه 10 باشه با بودن 5 ركورد ، ديگه صفحه كوچيك نباشه.
ممكنه سوال پيش پا افتاده اي كرده باشم ، چون من يه تازه كارم . قبلا از راهنماييهاي شما عزيزان تشكر ميكنم .
ممنون

سلام ،

لطفا اين پست (http://forums.asp.net/p/1023356/1389614.aspx#1389614) رو ملاحظه بفرمائيد .

ميتونيد برسي كنيد در صورتي كه تعداد Row هاي برگشتي كمتر از pageSize بود ، تعداد Pagesize - Row رديف به گريد ويو با ارتفاع مشخص اضافه كنيد .

موفق باشيد

aftab_mahtab
دوشنبه 30 فروردین 1389, 11:41 صبح
سلام ،

لطفا اين پست (http://forums.ASP.NET/p/1023356/1389614.aspx#1389614) رو ملاحظه بفرمائيد .

ميتونيد برسي كنيد در صورتي كه تعداد Row هاي برگشتي كمتر از pageSize بود ، تعداد Pagesize - Row رديف به گريد ويو با ارتفاع مشخص اضافه كنيد .

موفق باشيد


منظورتون كد زير هست :


if(this.GridView1.Rows.Count<this.GridView1.PageSize)
{
foreach (GridViewRow tt in GridView1.Rows)
{ tt.Height=""}
}


من ديتا گريد رو با يك ديتا سورس پر ميكنم و در رويداد DataBound كد بالا رو گذاشتم ، ولي هيچ اتفاقي نيافتاد .
لطفا راهنمايي كنيد . بسيار بسيار ممنونم

Vahid_moghaddam
دوشنبه 30 فروردین 1389, 12:44 عصر
برای گریدویو style تعریف کنید و خاصیت min-height رو تنظیم کنید. البته به ارتفاع سطر ها دقت کنید

aftab_mahtab
دوشنبه 30 فروردین 1389, 14:17 عصر
برای گریدویو style تعریف کنید و خاصیت min-height رو تنظیم کنید. البته به ارتفاع سطر ها دقت کنید


آقا اين كار رو هم كردم ولي باز هم نشد ، لطفا اگه ميشه ، يه سمپل كوچيك بزارين ، نمي دونم چرا واسه من نميشه!!!!!!!!!!!!!!!!!!

aftab_mahtab
سه شنبه 31 فروردین 1389, 09:51 صبح
لطفا يكي از اساتيد ، راهنمايي كنه ، تا اين مشكل ما هم به نتيجه برسه . ممنون

Vahid_moghaddam
سه شنبه 31 فروردین 1389, 09:55 صبح
کد گریدتون در صفحه aspx و کدهای مربوط در aspx.cs رو بذارید

aftab_mahtab
سه شنبه 31 فروردین 1389, 11:52 صبح
کد گریدتون در صفحه aspx و کدهای مربوط در aspx.cs رو بذارید


كد گريد ويو :


<asp:GridView ID="Gridview1" runat="server"
AutoGenerateColumns="False" BackColor="White" BorderColor="#DEDFDE"
BorderStyle="None" BorderWidth="1px" CellPadding="4"
DataSourceID="SqlDataSource1" GridLines="Vertical" Height="100px"
ForeColor="Black" AllowPaging="True">
<RowStyle BackColor="#F7F7DE" CssClass="row" />
<EmptyDataRowStyle CssClass="row" />
<Columns>
<asp:BoundField DataField="CO_ID" HeaderText="CO_ID" SortExpression="CO_ID" />
<asp:BoundField DataField="COMPANY_NAME" HeaderText="COMPANY_NAME"
SortExpression="COMPANY_NAME" />
</Columns>
<FooterStyle BackColor="#CCCC99" />
<PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
<SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White"
/>
<EditRowStyle CssClass="row" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>


كد vb :


Protected Sub Gridview1_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles Gridview1.DataBound
If Gridview1.Rows.Count < Gridview1.PageSize Then
For Each tt As GridViewRow In Gridview1.Rows
tt.Height = 16
Next
End If
End Sub


كد CSS :


.Row
{
min-height:16px;
}


بسيار بسيار ممنونم .

Vahid_moghaddam
سه شنبه 31 فروردین 1389, 12:11 عصر
style رو برای گرید ویو تعریف کنید

Vahid_moghaddam
سه شنبه 31 فروردین 1389, 12:16 عصر
<Gridview .... style="height:400px" />

aftab_mahtab
سه شنبه 31 فروردین 1389, 16:20 عصر
<Gridview .... style="height:400px" />


درست شد ، ولي اون مقدار اضافه رو به Header ميده ، يعني بجاي اينكه چند ركورد خالي اضافه كنه ، مياد سايز هيدر رو زياد ميكنه !!!

Vahid_moghaddam
سه شنبه 31 فروردین 1389, 16:29 عصر
سایز المان های داخل گرید رو مطابق اونچه دوستان گفتن تنظیم کنید. یا مثل همین روشی که گفتم

aftab_mahtab
چهارشنبه 01 اردیبهشت 1389, 10:15 صبح
سایز المان های داخل گرید رو مطابق اونچه دوستان گفتن تنظیم کنید. یا مثل همین روشی که گفتم

دوست عزيز ، من تمامي المانهاي گريد ويو رو هم تنظيم كردم ، ولي باز هم ....



<asp:GridView ID="Gridview1" style="height:400px" runat="server"
AutoGenerateColumns="False"
DataSourceID="SqlDataSource1" Height="100px" AllowPaging="True"
ShowFooter="True" ShowHeader="False" Width="152px" CellPadding="1">
<RowStyle CssClass="Row" />
<EmptyDataRowStyle CssClass="Row" />
<Columns>
<asp:BoundField DataField="CO_ID" HeaderText="CO_ID" SortExpression="CO_ID" />
<asp:BoundField DataField="COMPANY_NAME" HeaderText="COMPANY_NAME"
SortExpression="COMPANY_NAME" />
</Columns>
<FooterStyle CssClass="Row" />
<PagerStyle CssClass="Row" />
<SelectedRowStyle CssClass="Row" />
<HeaderStyle CssClass="Header" />
<EditRowStyle CssClass="Row" />
<AlternatingRowStyle CssClass="Row" />
</asp:GridView>


كد CSS :


.Header
{
Height:25px;
min-height:20px;
}
.Row
{
height:20px;
min-height:20px;
}


خدايي من ديگه موندم چجوريه ، كه نمي شه ؟ لطفا اگه ميشه ، يه نمونه بزارين .

aftab_mahtab
چهارشنبه 01 اردیبهشت 1389, 15:14 عصر
گويا دوستان ، از دست من خسته شدن . :گیج::خجالت:

aftab_mahtab
پنج شنبه 02 اردیبهشت 1389, 17:21 عصر
تازه کار بودن هم بد دردیه ها !!!!!! , کاشکی یکی از دوستان یه نمونه کوچیک میذاشت , که هم مشکل ما حل میشد و هم احتمالا بدرد دوستان تازه کار دیگه هم میخورد .
(این وضعیت من از درست نشدن این گرید ویو هست :عصبانی++::عصبانی++::ناراحت:)


Please F1