| public class RadLookupTextBox : ITemplate |
| { |
| // Make Properties |
| private string m_controlName = "", m_bindingName = ""; |
| private string m_fieldName = "", m_hyperlinkFieldName; |
| private string m_skin = "", m_buttonCssClass = ""; |
| private string m_functionButtonClick; |
| private int m_width = 0; |
| private bool m_editMode = false; |
| |
| public string ControlName |
| { |
| set |
| { |
| m_controlName = value; |
| } |
| } |
| public string BindingName |
| { |
| set |
| { |
| m_bindingName = value; |
| } |
| } |
| public string FieldName |
| { |
| set |
| { |
| m_fieldName = value; |
| } |
| } |
| public string HyperlinkFieldName |
| { |
| set |
| { |
| m_hyperlinkFieldName = value; |
| } |
| } |
| public string Skin |
| { |
| set |
| { |
| m_skin = value; |
| } |
| } |
| public string ButtonCssClass |
| { |
| set |
| { |
| m_buttonCssClass = value; |
| } |
| } |
| public string ButtonClickFunctionName |
| { |
| set |
| { |
| m_functionButtonClick = value; |
| } |
| } |
| public int Width |
| { |
| set |
| { |
| m_width = value; |
| } |
| } |
| public bool EditMode |
| { |
| set |
| { |
| m_editMode = value; |
| } |
| } |
| |
| |
| public RadLookupTextBox() |
| { |
| // |
| // TODO: Add constructor logic here |
| // |
| } |
| |
| public RadLookupTextBox(string controlName, string bindingName) |
| { |
| this.m_controlName = controlName; |
| if (bindingName != string.Empty) |
| this.m_bindingName = bindingName; |
| } |
| |
| public void InstantiateIn(System.Web.UI.Control container) |
| { |
| if (m_editMode) |
| { |
| RadTextBox textbox = new RadTextBox(); |
| textbox.DataBinding += new EventHandler(textbox_DataBinding); |
| textbox.ID = this.m_controlName; |
| textbox.Skin = m_skin; |
| textbox.Width = Unit.Pixel(m_width); |
| textbox.ShowButton = true; |
| textbox.ButtonCssClass = m_buttonCssClass; |
| textbox.ClientEvents.OnButtonClick = m_functionButtonClick; |
| container.Controls.Add(textbox); |
| } |
| else |
| { |
| HyperLink hl = new HyperLink(); |
| hl.DataBinding += new EventHandler(hyperlink_DataBinding); |
| hl.ID = this.m_controlName; |
| hl.Width = Unit.Pixel(m_width); |
| container.Controls.Add(hl); |
| } |
| } |
| |
| private void textbox_DataBinding(object sender, EventArgs e) |
| { |
| RadTextBox textbox = (RadTextBox)sender; |
| GridEditableItem container = (GridEditableItem)textbox.NamingContainer; |
| textbox.Text = ((DataRowView)container.DataItem)[m_fieldName].ToString(); |
| } |
| |
| private void hyperlink_DataBinding(object sender, EventArgs e) |
| { |
| HyperLink hl = (HyperLink)sender; |
| GridItem container = (GridItem)hl.NamingContainer; |
| hl.Text = ((DataRowView)container.DataItem)[m_fieldName].ToString(); |
| hl.NavigateUrl = ((DataRowView)container.DataItem)[m_hyperlinkFieldName].ToString(); |
| } |
| |
| |
| } |
|