Quantcast
Channel: Web Forms
Viewing all articles
Browse latest Browse all 23244

Can anyone suggest me a better method.?

$
0
0

Hi eveeryone,

I have used a user control to add note at the end of each page.

I should be able to easily add the notes message set the css for the contrl,alignment of tezt on every page where i use the user control.(It should behave like a .net control).

public partial class controls_AddNote : System.Web.UI.UserControl
{
    private Collection<AddNote> _Items = new Collection<AddNote>();

    public Collection<AddNote> Items
    {
        get { return _Items; }
        set { _Items = value; }
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (Items != null)
        {
            if (!IsPostBack)
            {
                if (Items.Count > 0)
                    tblNotes.Rows.Clear();
            }
            foreach (var item in Items)
            {
                 BindNote(item.Message, item.CssClass, item.Align);
            }
        }
    }

    private void BindNote(string Message, string CssClass, string Align)
    {
        TableRow tblRow = new TableRow();
        TableCell tblCell= new TableCell();
        tblCell.CssClass = CssClass;

        if (Align.ToUpper() == "LEFT")
            tblCell.HorizontalAlign = HorizontalAlign.Left;
        else if (Align.ToUpper() == "RIGHT")
            tblCell.HorizontalAlign = HorizontalAlign.Right;
        else if (Align.ToUpper() == "CENTER")
            tblCell.HorizontalAlign = HorizontalAlign.Center;

        tblCell.Text = Message;
        tblRow.Cells.Add(tblCell);
        tblNotes.Rows.Add(tblRow);
    }
}

public class AddNote
{
    private string _Message = string.Empty;
    private string _CssClass = "note3";
    private string _Align = "Left";

public AddNote(string Message)
    {
        _Message = Message;
    }

    public AddNote(string Message, string CssClass)
    {
        _Message = Message;
        _CssClass = CssClass;
    }
    public AddNote(string Message, string CssClass, string Align)
    {
        _Message = Message;
        _CssClass = CssClass;
        _Align = Align;
    }
 public string Message
    {
        get { return _Message; }
        set { _Message = value; }
    }


    public string CssClass
    {
        get { return _CssClass; }
        set { _CssClass = value; }
    }

    public string Align
    {
        get { return _Align; }
        set { _Align = value; }
    }
}

And iam able to call it in each page as below

Notes1.Items.Add(new AddNote("$ indicates US Dollar"));
 
Can anyone suggest me a better way to approach this.
Thanks,




Viewing all articles
Browse latest Browse all 23244

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>