Sep 10, 2015, 5:18 PM
[CLOSED] Get a Value from a Store Control
Hi Community !
I want to know if is feasible, get the value from a Store Control linked to GridPanel
I implemented the following example to illustrate my problem
Regards.
I want to know if is feasible, get the value from a Store Control linked to GridPanel
I implemented the following example to illustrate my problem
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!X.IsAjaxRequest)
{
}
}
protected void Button1_Click(object sender, DirectEventArgs e)
{
object theObject = new
{
Column1 = TextField1.Text,
Column2 = TextField2.Text,
Column3 = TextField3.Text,
};
Store1.Add(theObject);
FormPanel1.Reset();
}
protected void Button2_Click(object sender, DirectEventArgs e)
{
int intIndice = int.Parse(Hidden1.Text);
Store1.GetAt(intIndice).BeginEdit();
Store1.GetAt(intIndice).Set("Column1", (object)TextField1.Text);
Store1.GetAt(intIndice).Set("Column2", (object)TextField2.Text);
Store1.GetAt(intIndice).Set("Column3", (object)TextField3.Text);
Store1.GetAt(intIndice).Commit();
Store1.GetAt(intIndice).EndEdit();
FormPanel1.Reset();
}
protected void RowSelectionModel1_OnCellSelect(object sender, DirectEventArgs e)
{
try
{
FormPanel1.Reset();
Hidden1.Text = e.ExtraParams["Indice"].ToString();
var recordData = JSON.Deserialize<Dictionary<string, object>>(e.ExtraParams["recordData"]);
object theobject = new
{
Column1 = recordData["Column1"],
Column2 = recordData["Column2"],
Column3 = recordData["Column3"]
};
FormPanel1.SetValues(theobject);
}
catch (Exception)
{
}
}
</script>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Viewport ID="Viewport1" runat="server" Layout="BorderLayout" DefaultAnchor="90%">
<Items>
<ext:FormPanel ID="FormPanel1" runat="server"
Region="North"
Margins="5 5 5 5"
BodyPadding="5"
Frame="true">
<Listeners>
<ValidityChange Handler="#{Button1}.setDisabled(!valid);" />
</Listeners>
<Items>
<ext:Hidden ID="Hidden1" runat="server" />
<ext:TextField ID="TextField1" runat="server" FieldLabel="Column1" AllowBlank="false" Name="Column1" />
<ext:TextField ID="TextField2" runat="server" FieldLabel="Column2" AllowBlank="false" Name="Column2" />
<ext:TextField ID="TextField3" runat="server" FieldLabel="Column3" AllowBlank="false" Name="Column3" />
</Items>
<DockedItems>
<ext:Toolbar ID="Toolbar1" runat="server" Dock="Top" >
<Items>
<ext:ToolbarFill />
<ext:Button ID="Button1" runat="server" Text="Add" Icon="Add" Disabled="true">
<DirectEvents>
<Click OnEvent="Button1_Click"></Click>
</DirectEvents>
</ext:Button>
<ext:Button ID="Button2" runat="server" Text="Save" Icon="Disk" Disabled="true" >
<DirectEvents>
<Click OnEvent="Button2_Click"></Click>
</DirectEvents>
</ext:Button>
</Items>
</ext:Toolbar>
</DockedItems>
</ext:FormPanel>
<ext:GridPanel ID="GridPanel1" runat="server"
Height="250"
Width="400"
Title="GridPanel1"
ForceFit="true"
Border="false"
Margins="0 5 5 5"
Frame="true">
<Store>
<ext:Store ID="Store1" runat="server">
<Model>
<ext:Model ID="Model1" runat="server">
<Fields>
<ext:ModelField Name="Column1" Type="String"></ext:ModelField>
<ext:ModelField Name="Column2" Type="String"></ext:ModelField>
<ext:ModelField Name="Column3" Type="String"></ext:ModelField>
</Fields>
</ext:Model>
</Model>
<Listeners>
<DataChanged Handler="#{Button2}.setDisabled(#{GridPanel1}.getStore().getCount() > 0 ? false : true);" />
</Listeners>
</ext:Store>
</Store>
<ColumnModel ID="ColumnModel1" runat="server">
<Columns>
<ext:Column ID="Column1" runat="server" Text="Column1" DataIndex="Column1"></ext:Column>
<ext:Column ID="Column2" runat="server" Text="Column2" DataIndex="Column2" ></ext:Column>
<ext:Column ID="Column3" runat="server" Text="Column3" DataIndex="Column3" ></ext:Column>
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel1" runat="server">
<DirectEvents>
<Select OnEvent="RowSelectionModel1_OnCellSelect">
<ExtraParams>
<ext:Parameter Name="Indice" Value="index" Mode="Raw"></ext:Parameter>
<ext:Parameter Name="recordData" Value="record.data" Mode="Raw" />
</ExtraParams>
<EventMask ShowMask="true" Msg="Displaying ..." MinDelay="1000" />
</Select>
</DirectEvents>
</ext:RowSelectionModel>
</SelectionModel>
</ext:GridPanel>
</Items>
</ext:Viewport>
</form>
</body>
</html>
I accept suggestions ideas or commentsRegards.
Last edited by Daniil; Sep 11, 2015 at 7:58 PM.
Reason: [CLOSED]