PDA

View Full Version : سوال: چطوری پست ها رو پشت سر هم قرار بدم



ironclip
سه شنبه 25 مرداد 1390, 23:15 عصر
سلام
من مشغول نوشتن یک cms هستم که در قسمت ادمین می خوام متنی را بنویسم و به اندیکس صفحه اصلی برود و به همین ترتیب پست هارو پشت سر هم نمایش دهد .

برای مثال بهتر : مانند cms وردپرس ، مطلبی را می نویسند و انتشارش می کنند .

ممنونم از دوستان اگر من را راهنمای کنید :قلب:

nadi_1368
سه شنبه 25 مرداد 1390, 23:51 عصر
salam age mishe vazetar tozih bedin

Saman Hashemi
سه شنبه 25 مرداد 1390, 23:59 عصر
با استفاده از گریدویو براحتی میشه اینکار انجام داد...!

raika17metal
چهارشنبه 26 مرداد 1390, 00:27 صبح
شکل ظاهری GridView


<asp:GridView ID="grdShowArticle" runat="server" Width="98%"
AutoGenerateColumns="False" CellPadding="0" ForeColor="#333333"
GridLines="None" Height="95%" ShowHeader="False"
style="margin:0 auto;margin-top:6px;margin-bottom:5px;">
<RowStyle BackColor="#E3EAEB" HorizontalAlign="Left" />
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:Label ID="Label1" runat="server" Font-Bold="True" ForeColor="Red"
Text='<%# Eval("title") %>'></asp:Label>
</HeaderTemplate>
<ItemTemplate>
<table cellpadding="0" cellspacing="0" style="width:100%;height:auto;vertical-align:middle;">
<tr>
<td style="background-color:#990000;height:30px; text-align:center;">
<asp:Label ID="Label1" runat="server" Font-Bold="True" ForeColor="#ffffff"
Text='<%# Eval("title") %>' style="text-align: center"></asp:Label>
</td>
<tr>
<td style="height:35px;"><asp:Label ID="Label2" runat="server" Text='<%# Eval("article") %>'></asp:Label> <hr /></td>
</tr>

<tr>
<td style="height:30px; padding-right:10px;">
<asp:Label ID="Label4" runat="server" ForeColor="#FF9900" Text="Date : "></asp:Label>
<asp:Label ID="Label3" runat="server" ForeColor="#FF9900"
Text='<%# Eval("Date") %>'></asp:Label>
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
<EmptyDataTemplate>

</EmptyDataTemplate>
<SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#7C6F57" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>


کد نویسی استخراج اطلاعات و نمایش در GridView


protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadArticle();
}
}
private void LoadArticle()
{
Article article = new Article();
article.ArticleID = int.Parse(Request.QueryString["articleid"].ToString());

ProcessSelectArticleByID selectarticle = new ProcessSelectArticleByID();
selectarticle.Article = article;
try
{
selectarticle.Invoke();
}
catch
{
Response.Redirect("ErroPage.aspx");
}
grdShowArticle.DataSource = selectarticle.Resultset;
grdShowArticle.DataBind();
}

raika17metal
چهارشنبه 26 مرداد 1390, 00:28 صبح
این فقط حالت کلی هستش. اگه متوجه نشدی بگو یه مثال ساده و واضح برات بفرستم.(پیام خصوصی)

behnambest2000
چهارشنبه 26 مرداد 1390, 01:01 صبح
سلام دوستان من همه اين كارا رو انجام دادم . فقط گيرم اينه كه اطلاعات رو طبق id يا تاريخ بچينم و از پايگاه داده استخراج كنم و در ديتاگريد نشان بدم 4 تا فيلد دارم به نام هاي id و data و subject و text مي خوام اينا رو تو ديتا گريد نشون بدم زبان برنامه نويسي من هم vb.net هستش

http://www.up.takdune.com/images/yezfcy149yy56wpyzde.jpg

behnambest2000
چهارشنبه 26 مرداد 1390, 01:24 صبح
Dim Query = From B In bank.test_Table2s _
Where B.blogt = TextBox2.Text _
Select B
For Each record In Query

Label10.Text = record.subject.ToString
Label11.Text = record.data.ToString
Label12.Text = record.text.ToString
Next
با ايم دستور مي شه تو يه ليبل نشون داد ولي تو ليبلي كه توي ديتاگريد هست نمي شه نشون داد

behnambest2000
چهارشنبه 26 مرداد 1390, 02:21 صبح
مشكلم حل شد داداش حالا چطور مي شه گريد ويو رو اين شكليش كرد . واسه زيبا سازي مي گم مثل اين سايت

http://www.scriptfa.ir/

راستي چطوري مي تونيم كاري كنيم كه توي هر صفحه فقط 10 تا پست قرار بگيره و بقيش تو يه صفحه ديگه به همين صورت ؟ ادامه مطلب رو چطوري مي شه درست كرد ؟

ASPX
چهارشنبه 26 مرداد 1390, 07:38 صبح
گرید ویو خصوصیتی به نام pageSize دارد آن را به مقدار دلخواه مثلا 10 تنظیم کنید

raika17metal
چهارشنبه 26 مرداد 1390, 11:41 صبح
البته بعد از اینکه PageSize=10 قرار دادی برای اینکه با Error مواجه نشی باید این کد رو هم اضافه کنی

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}