Oct 13, 2010, 7:52 PM
[CLOSED] Extending TriggerField
Hi,
I need to extend a TriggerField, but I'm having a problem. When the extended control is rendered it contains two trigger buttons.
As the following example shows, only one button executes the 'TriggerClick' handler. Also the 'HideTrigger' property hides only one button when it's set to true.
What can I do to show only one button in my extended control?
Follows the example code:
I need to extend a TriggerField, but I'm having a problem. When the extended control is rendered it contains two trigger buttons.
As the following example shows, only one button executes the 'TriggerClick' handler. Also the 'HideTrigger' property hides only one button when it's set to true.
What can I do to show only one button in my extended control?
Follows the example code:
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public class MyTriggerField : Ext.Net.TriggerField
{
public override string XType { get { return "myTriggerField"; } }
public override string InstanceOf { get { return "myTField"; } }
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Ext.Net.Button btn = new Ext.Net.Button() { Text = "Get value" };
btn.Listeners.Click.Handler = "alert(#{myTrg}.getMyValue());";
TriggerField tf = new TriggerField();
tf.FieldLabel = "TriggerField";
tf.Width = 200;
//tf.HideTrigger = true;
MyTriggerField mtf = new MyTriggerField();
mtf.ID = "myTrg";
mtf.FieldLabel = "My Control";
mtf.Width = 200;
//mtf.HideTrigger = true;
mtf.Listeners.TriggerClick.Handler = "alert('trigger click');";
panel.Items.Add(tf);
panel.Items.Add(mtf);
panel.Items.Add(btn);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<ext:ResourceManager runat="server" />
<ext:Panel ID="panel" runat="server" />
</form>
<script type="text/javascript">
myTField = Ext.extend(Ext.form.TriggerField, {
getMyValue: function()
{
return 'My value: ' + this.getValue();
}
});
Ext.reg('myTriggerField', myTField);
</script>
</body>
</html>
Last edited by Daniil; Oct 14, 2010 at 7:04 PM.
Reason: [CLOSED]