Hỏi đáp Giúp winform c# với !!!

Thảo luận trong 'C#' bắt đầu bởi Boy..., 2 Tháng mười hai 2011.

  1. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    Mình đang làm bài tập c# với control listview nhưng không biết cách làm button "lưu" và "cập nhật" như thế nào...
    Mọi người giúp mình nhé !!!
    shalyn thích bài này.
  2. binhcaolinh Windows 98

    Offline
    Số bài viết:
    283
    Đã được thích:
    94
    Điểm thành tích:
    190
    Bạn hãy ghi rõ cái đề ra đc ko?
    Giả sử cái listview của bạn tên là listview1: Mún tạo code cho button "thêm" thì bạn dùng code: listview1.Items.Add("...");
    còn cái button lưu là sao thì mình chưa rõ.
    sunset_glow thích bài này.
  3. chip Thành viên sáng lập

    Offline
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    --->"lưu" là lưu vào đâu?
    --->"cập nhật" là cập nhật cái gì?
    ---->Sao cứ đưa ra vấn đề không rõ đầu đuôi vậy.
    sunset_glowlyvinhr00m thích bài này.
  4. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    Lưu tức là in ra file text hay word gì đó...
    Cập nhật tức là cập dữ liệu sau khi sữa listview
    Sr vì đã k nêu rõ
    shalyn thích bài này.
  5. SPD Windows 98

    Offline
    Số bài viết:
    225
    Đã được thích:
    83
    Điểm thành tích:
    190
    Mọi người hãy đọc lại bài này

    đầu tiên, tạo nút cập nhật(mình đặt tên là btnCapnhat), ấn F4 chọn visible = false.
    tại lớp public partial class Form1 : Form tạo 2 biến bool capnhat = false; và int chisolistview = -1;

    tại nút sửa (kích đúp chuột vào nút sửa).

    gán:
    btnCapnhat.Visible = true;
    capnhat = true;


    tại nút cập nhật:
    if(capnhat)
    {
    chisolistview = listView1.SelectedItems[0].Index;
    copy nguyên đoạn mã của nút thêm (trừ đoạn mã listView1.Items.Add(item), nếu không thì sẽ không làm được nút này)
    rồi gõ
    listView1.Item[chisolistview] = item;
    listView1.Update();
    }
    shalynBoy... thích bài này.
  6. toanit0392 Windows 1.0

    Offline
    Số bài viết:
    80
    Đã được thích:
    14
    Điểm thành tích:
    10
    cho mình hỏi khai báo int chisolistview = -1; roi sau đó cho nó =0., co ý nghĩa gì vậy, minh cho int chisolistview = -1 thay bằng=2,3,4...,thậm chí không cho nó giá trị nào thì chương trình vẫn chạy đúng bình thường mà , không hiểu?|-) hãy giải thích dùm mình nhé ,thank
    shalyn thích bài này.
  7. SPD Windows 98

    Offline
    Số bài viết:
    225
    Đã được thích:
    83
    Điểm thành tích:
    190
    cái này mình nghe thầy mình nói là chisolistview phải gán bằng -1 vì giá trị nhỏ nhất của nó là 0. Mình cũng không nhớ rõ nữa
  8. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    cám ơn SPD, mình đã làm được phần cập nhật, bạn có thể giúp mình phần ''Lưu" được ko ?? Tks bạn !
    shalyn thích bài này.
  9. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    cám ơn SPD, mình đã làm được phần cập nhật, bạn có thể giúp mình phần ''Lưu" được ko ?? Tks bạn !<br>
    shalyn thích bài này.
  10. SPD Windows 98

    Offline
    Số bài viết:
    225
    Đã được thích:
    83
    Điểm thành tích:
    190
    trước khi nói cho bạn nút lưu thì mình cũng muốn sửa lại một chút về nút cập nhật
    đầu tiên, tại nút cập nhật bạn gõ thêm:
    if(capnhat)
    {
    (Đưa toàn bộ câu lệnh tại nút cập nhật vào đây.)
    }
    thế thôi

    còn nút lưu thì bạn làm như sau:
    private void Form1_Load(object sender, EventArgs e)
    {
    listView1.View = View.Details;
    listView1.View = View.Details;

    listView1.Columns.Clear();
    listView1.Items.Clear();

    listView1.Columns.Add(new ColumnHeader()); //tạo cột, riêng câu lệnh này lặp lại nhiều lần, khi nào số câu lệnh bằng số cột cần tạo là dừng.
    listView1.Clolums[0].Text = "chữ bạn cần gõ"; //đây là câu lệnh để tạo tiêu đề cho cột, các câu sau cũng tương tự nhưng con số 0 được thay bằng số 1,2,3 cho đến khi số đó bằng số cột bạn đã tạo - 1 thì thôi gõ;
    }
    nút thêm:
    private void button1_Click(object sender, EventArgs e)
    {
    ListViewItem item = new ListViewItem();
    item.Text = textBox1.text;// tùy đối tượng để add, ở đây mình dùng text box
    item.SubItems.Add(textBox2.Text);
    listView1.Items.Add(item);
    }
    Phức tạp thế thôi chứ xem hình thì đơn giản lắm
    [IMG][IMG][IMG]
  11. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    Đây là Thêm mà bạn, chứ có phải lưu đâu???
    Hay bạn share cho mình cái Form trên đi !!!
  12. SPD Windows 98

    Offline
    Số bài viết:
    225
    Đã được thích:
    83
    Điểm thành tích:
    190
    Mình xóa rồi bạn ơi
    mà trên cái form đó nút lưu của mình chính là nút cập nhật, không phải nút lưu bạn nói :D, còn nút lưu mà bạn muốn nói thì viết như sau:
    Đầu tiên, tạo không gian tên: using System.IO;(Bước này không thể bỏ qua).
    tại nút Lưu:
    FileStream fs = new FileStream("C:\\Thong_tin.txt", FileMode.Append, FileAccess.Write);
    StreamWriter st = new StreamWriter(fs);
    st.Write("Họ tên: ");
    st.Write(textBox1.Text);
    st.Write(";");
    st.Write("Lớp");
    st.Write(textBox2.Text);
    st.Write(".");
    st.Flush();
    st.Close();
    MessageBox.Show("Lưu lại thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
    Boy... thích bài này.
  13. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    thật tốt quá , cám ơn bạn nhìu nhìu, nhưng ko biết thường thì đề thi bắt lưu ntn nhỉ???
  14. SPD Windows 98

    Offline
    Số bài viết:
    225
    Đã được thích:
    83
    Điểm thành tích:
    190
    Mình cũng ko biết, chắc là lưu vào ListView. Mà nói thật, mình cũng lo môn này lắm
    Boy... thích bài này.
  15. toanit0392 Windows 1.0

    Offline
    Số bài viết:
    80
    Đã được thích:
    14
    Điểm thành tích:
    10
    cho mình hỏi
    listView1.View = View.Details;
    listView1.View = View.Details;
    hai câu lệnh này có mục đích gì vậy
    .Details là sao nhỉ ,\
    mình ko hiểu , giải thích cho mình với
    thank ,nhanh nha !
  16. toanit0392 Windows 1.0

    Offline
    Số bài viết:
    80
    Đã được thích:
    14
    Điểm thành tích:
    10
    st.Flush();. có nghĩa là gì vậy bạn , giải thích dùm mình với,thank !
  17. SPD Windows 98

    Offline
    Số bài viết:
    225
    Đã được thích:
    83
    Điểm thành tích:
    190
    Flush() - Xóa tất cả các vùng đệm mà Writer đang nắm giữ.
  18. toanit0392 Windows 1.0

    Offline
    Số bài viết:
    80
    Đã được thích:
    14
    Điểm thành tích:
    10
    listView1.View = view.Detail;
    listView1.View = view.Detail;
    có nghĩa gì vậy ,tại sao dùng 2 câu mà không là môt số khác nhỉ...
    giải thích dùm mình tí, nhiều bạn thắc mắt chỗ đó lắm đó....
    nhanh nha,,,
  19. toanit0392 Windows 1.0

    Offline
    Số bài viết:
    80
    Đã được thích:
    14
    Điểm thành tích:
    10
    mà câụ tên gì vay nhỉ mình muốn trao đổi môt chút đươc ko
  20. Boy... Thành Viên Mới

    Offline
    Số bài viết:
    44
    Đã được thích:
    33
    Điểm thành tích:
    0
    Cái này là xem listview theo kiểu detail đó mà bạn, xem được cả các cột nữa...
    SPD thích bài này.

Chia sẻ trang này