Cách trình bày chi tiết trang Tin ??

Bài mới nhất gửi 01/12/2008 8:25 AM, do TrungDD gửi. 5 hồi âm.
Trang 1 trên 1
Cách sắp xếp: Trước Tiếp
  • 29/11/2008 2:26 PM

    Cách trình bày chi tiết trang Tin ??

    Nếu em muốn trình bày một trang tin như thế này em phải làm thế nào:

    http://hp-aptech.edu.vn/hpa/curriculums/archive/2008/07/23/accpi71.aspx

     Em đã thử gridview nhưng xem ra không ổn. ai giúp em với!

    Xếp trong: ,
    • Điểm bài gửi: 13
  • 29/11/2008 4:30 PM trả lời cho

    • ThuPAC0511L
    • Top 50 Contributor
      Nam
    • Joined on 15/09/2008
    • Hải Phòng
    • Bài gửi 6
    • Điểm 33

    Re: Cách trình bày chi tiết trang Tin ??

    Nếu cậu bố trí trang tin tức (chi tiết ) thì cậu k thể dùng Gridview hay datagrid hay cái  j đó tương tự như vậy được vì tin bài có cái có ảnh có cái thì k. Mình sẽ gợi ý cho cậu 1 cách làm khác, cách này mình đã làm nhiều rồi.

    Trước tiên : trong trang .aspx cậu tạo một cái div hay label.. và đặt cho nó cái thuộc tính runat="server"

    Tiếp: trong code behind cậu tạo một method. trong cái method mày cậu viết như sau:

    1.Gọi dữ liệu ra: select cái j đó tùy bạn

    2. DataTable dtNews = new DataTable(); // tạo 1 datatable

    dtNews = sourceID;// sourceID là cái ở bước 1

    3.
    StringBuilder strContent = new StringBuilder();

    strContent.Append("viet ma html vào đây");

    strTemp = "...."; foreach (DataRow dr in dtNews.Rows)

    {

    string strDescription = String.Format("{0}", object);

    // Kiem tra truong anh xem co rong hay k

    // Nếu rỗng thì cho biến: string strImage="";

    //Nếu k rỗng thì viết tiep code vào day de cho ảnh hiển thị

    string strDetail = String.Format("{0}", object);

    strContent.Append(String.Format(strTemp, (strDetail)));

    }

    strContent.Append(
    "html>");

    div.InnerHtml = strContent.ToString();

    Mình chỉ gợi ý bạn đến thế thôi.Còn phát triển thêm thế nào là tùy bạn

    Ah quên : trong nội dung của tin bạn muốn chèn thêm các ảnh hay flash... thì bạn phải dùng bộ editor (freetextbox hay fck ) cập nhật ở trong phần admin thì bên ngoài nó sẽ hiển thị ra ngay thôi

    • Điểm bài gửi: 3
  • 29/11/2008 4:41 PM trả lời cho

    • TrungDD
    • Top 10 Contributor
    • Joined on 29/07/2008
    • Bài gửi 416
    • Điểm 1,547

    Re: Cách trình bày chi tiết trang Tin ??

    tiepnac0604i:

    Nếu em muốn trình bày một trang tin như thế này em phải làm thế nào:

    http://hp-aptech.edu.vn/hpa/curriculums/archive/2008/07/23/accpi71.aspx

     Em đã thử gridview nhưng xem ra không ổn. ai giúp em với!

    Bạn hãy nói rõ hơn về thông tin cần thiết mà bạn sẽ đưa ra và cách bố trí nội dung của bạn theo thiết kế dữ liệu của bạn là như thế nào?. Bạn hãy tham khảo cách làm như của ThuC0511l nhé!

    Xếp trong: ,
    • Điểm bài gửi: 8
  • 29/11/2008 6:04 PM trả lời cho

    Re: Cách trình bày chi tiết trang Tin ??

    Trong trang chi tiết em muốn trình bày như sau:

     

    1.Tiêu đề tin

    2.Mô tả ngắn ngọn sơ lược bản tin.

     3.Ảnh

    4.Cuối cùng là chi tiết bản tin mình thể hiện

    --------------------

    .StringBuilder strContent = new StringBuilder();

    Không hiểu tại sao em không thể tạo được kiểu dữ liệu StringBuilder này được. Có phải import thêm gì không

    string strDescription = String.Format("{0}", object);

    câu lệnh này thực chất là gì em không hiểu.

    • Điểm bài gửi: 8
  • 29/11/2008 6:16 PM trả lời cho

    Re: Cách trình bày chi tiết trang Tin ??

     Thực ra em có 1 datagrid thể hiện danh sách các tin (Title, NewsId,Catego)

        public void loadgv(){
            News news = new News();
            DNews dn = new DNews(news);
            gv_News.DataSource=dn.selectAll().Tables["News"];
            gv_News.DataBind();
        }

     và ở gv có em để 1 event là selectindexchanging để khi click vào thì lấy ID truy xuất trực tiếp bản tin ra luôn.

        protected void gv_News_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
        {
            News n = new News();               
           
            GridViewRow row = gv_News.Rows[e.NewSelectedIndex];
            n.NewsId = int.Parse(row.Cells[0].Text);
            DNews dn = new DNews(n);

            DataSet ds=dn.selectById();

            DataTable dt = ds..Tables["NewsDetails"];      
        }

    ----selectById():

            public DataSet selectById()
            {
                base.Connect();
                string sql = "SELECT n.NewsId,n.Titles,n.DateUp,t.TypeName,t.TypeId FROM News n INNER JOIN TypeNews t ON n.TypeId=t.TypeId WHERE n.NewsId=@NewsId";
                SqlCommand cmd = new SqlCommand(sql, conn);
                cmd.Parameters.Add(new SqlParameter("@NewsId", SqlDbType.Int, 4));
                cmd.Parameters["@NewsId"].Value = this.n.TypeId;
                DataSet ds = new DataSet();
                SqlDataAdapter data = new SqlDataAdapter(cmd);
                try
                {
                    data.Fill(ds, "NewsDetails");
                    base.Disconnect();
                    return ds;
                }
                catch (Exception ex)
                {
                    System.Console.Write(ex.Message);
                    base.Disconnect();
                    return null;
                }
            }

    • Điểm bài gửi: 3
  • 01/12/2008 8:25 AM trả lời cho

    • TrungDD
    • Top 10 Contributor
    • Joined on 29/07/2008
    • Bài gửi 416
    • Điểm 1,547

    Re: Cách trình bày chi tiết trang Tin ??

     

    tiepnac0604i:

    StringBuilder strContent = new StringBuilder();

    Không hiểu tại sao em không thể tạo được kiểu dữ liệu StringBuilder này được. Có phải import thêm gì không

    string strDescription = String.Format("{0}", object);

    câu lệnh này thực chất là gì em không hiểu.

    - StringBuilder nằm trong System.Text;

    - Câu lệnh String.Format("{0}", object); dùng để xuất thông tin giống như là lệnh printf trong C. Lưu ý câu lệnh này có thể gây ra tràn bộ đệm nếu đối tượng quá lớn.

    Một ví dụ mẫu đơn giản cho bài toán sau đây là in ra dòng chữ kèm theo hình ảnh đi kèm của nó. Các định dạng khác ta có thể làm theo cách tương tự:

    • Điểm bài gửi: 3
Trang 1 trên 1
Tầng 3, Tòa nhà Sholega, số 275 Lạch Tray, Ngô Quyền, Hải Phòng
Tel: +84 (31) 3.733.000 - 3.733.111      Fax: +84 (31) 3.733.222
Email: center@hp-aptech.edu.vn
© 2004-2008 HaiPhong - Aptech Computer Education Giới thiệu  |  Liên hệ