Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: cho mình hỏi ve reflection.

  1. #1
    Ngày gia nhập
    12 2007
    Bài viết
    0

    Red face cho mình hỏi ve reflection.

    Có ai biềt về reflection giúp mình với , nếu có thêm tài liệu thì càng tốt. cám ơn các pác rất nhiều

  2. #2
    Ngày gia nhập
    06 2007
    Nơi ở
    TP.HCM
    Bài viết
    113

    Mình cũng chưa hiểu rõ về cái namespace này lắm (muốn tìm hiểu nhưng chắc đợi thi xong). Mình thường sử dụng nó để lấy một vài thông số hệ thống và thông số của các file config của chương trình.

    Thường lấy ra productname, version mà khi ta tạo chương trình và thiết lập trong phần Project --> [tên chương trình] properties của visualstudio.

    Dưới đây là file kèm mình tham khảo và thường sử dụng cách này để hiển thị version, productname, companyname, copyright...

    Code:
    using System.Reflection;
    
    namespace QLDiemHV
    {
        public partial class frmAbout : Form
        {
            public frmAbout(frmMain parent)
            {
                InitializeComponent();
                this.MdiParent = parent;
                this.Text = String.Format("About {0}", AssemblyTitle);
                lbProductName.Text = AssemblyProduct;
                lbVersion.Text = String.Format("Version {0}", AssemblyVersion);
                //lbCompanyName.Text = AssemblyCompany;
                //lbCopyRight.Text = AssemblyCopyright;
                //txtDescription.Text = AssemblyDescription;
            }
    
            #region Singleton
            static frmAbout me = null;
            static public frmAbout GetObj(frmMain frm)
            {
                if (me == null)
                {
                    me = new frmAbout(frm);
                }
                return me;
            }
            #endregion
    
            #region Assembly Attribute Accessors
    
            public string AssemblyTitle
            {
                get
                {
                    object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
                    if (attributes.Length > 0)
                    {
                        AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0];
                          if (titleAttribute.Title != "")
                            return titleAttribute.Title;
                    }
                    return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase);
                }
            }
    
            public string AssemblyVersion
            {
                get
                {
                    return Assembly.GetExecutingAssembly().GetName().Version.ToString();
                }
            }
    
            public string AssemblyDescription
            {
                get
                {
                    object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false);
                    if (attributes.Length == 0)
                        return "";
                    return ((AssemblyDescriptionAttribute)attributes[0]).Description;
                }
            }
    
            public string AssemblyProduct
            {
                get
                {
                    object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false);
                    if (attributes.Length == 0)
                        return "";
                    return ((AssemblyProductAttribute)attributes[0]).Product;
                }
            }
    
            public string AssemblyCopyright
            {
                get
                {
                    object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false);
                    if (attributes.Length == 0)
                        return "";
                    return ((AssemblyCopyrightAttribute)attributes[0]).Copyright;
                }
            }
    
            public string AssemblyCompany
            {
                get
                {
                    object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false);
                    if (attributes.Length == 0)
                        return "";
                    return ((AssemblyCompanyAttribute)attributes[0]).Company;
                }
            }
            #endregion
    
        }
    }
    http://msdn2.microsoft.com/en-us/lib...83(VS.80).aspx
    http://www.oreilly.com/catalog/progc...pter/ch18.html

    Gác Kiếm

  3. #3
    Ngày gia nhập
    12 2007
    Bài viết
    0

    cám ơn bạn , mình cũng sẽ tỉm hiểu thêm, có gì chúng ta cùng trao đổi.

  4. #4
    Ngày gia nhập
    10 2007
    Nơi ở
    HCMUNS
    Bài viết
    459

    Tại sao cái nào sunflower cũng xài singleton hết vậy ? Có lạm dụng quá ko ?

    P/s: cái này đâu cần code đâu. Add item là aboutBox là có hết
    Keep moving forward!

    ... Retired ...

  5. #5
    Ngày gia nhập
    06 2007
    Nơi ở
    TP.HCM
    Bài viết
    113

    Trích dẫn Nguyên bản được gửi bởi nhc1987 Xem bài viết
    Tại sao cái nào sunflower cũng xài singleton hết vậy ? Có lạm dụng quá ko ?

    P/s: cái này đâu cần code đâu. Add item là aboutBox là có hết
    Không phải cái nào cũng xài đâu! Chỉ cái nào lớn, cần liên kết giữa các form thường xuyên, cần thiết lập các static tớ mới xài. Cái ở trên tớ chỉ trích dẫn một phần từ project tớ đã từng làm thôi. Cái singleton chả liên quan gì!!!!

    Gác Kiếm

Các đề tài tương tự

  1. Lỗi gì System.Reflection.ReflectionTypeLoadException khi chạy chương trình trên máy khác?
    Gửi bởi soravn trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 26-11-2012, 04:10 PM
  2. Kĩ thuật Reflection trong lập trình C# với .Net
    Gửi bởi Yin Yang trong diễn đàn Tutorials và Thủ thuật lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 19-07-2012, 11:51 AM
  3. Sử dụng reflection trong factory pattern như thế nào?
    Gửi bởi NostraNam trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 01-03-2012, 05:14 PM
  4. Trong Objective C có Abstract class và Reflection hay không ?
    Gửi bởi ngocsonaat trong diễn đàn Thắc mắc lập trình Objective-C
    Trả lời: 14
    Bài viết cuối: 27-09-2011, 10:04 PM
  5. Hướng dẫn mình xây dựng cơ chế reflection trong C++,please!!!
    Gửi bởi chanphat01001 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 16-10-2007, 12:48 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn