PDA

View Full Version : حرفه ای: مشکل در Component Column



dabirsiaghi
شنبه 06 مهر 1392, 11:34 صبح
سلام دوستان
بنده از گرید ext در یک کاری دارم استفاده میکنم
به یک مشکل برخوردم
در گرید لیستی را بایند کردم
یک ستون Component Column گذاشتم و میخوام داخلش یک Textbox قرار بدم و مقدار text آن را برابر یکی از فیلد های لیست بایند شده فرار بدم هرکاری میکنم نمی شود کسی میداند قلقش چیست؟اگر به من کمک کنید ممنون می شم
در ستون که Header آن ستون مورد نظر است یک Textbox در سلول های آن وجود دارد

111278

dabirsiaghi
شنبه 06 مهر 1392, 11:35 صبح
<form id="form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Window runat="server" Width="880"
Height="600"
Closable="false"
Collapsible="true"
Title="لیست افراد"
Maximizable="true"
Layout="Fit"
RTL="true">
<Items>
<ext:GridPanel runat="server" ID="GridPanel1">

<TopBar>
<ext:Toolbar runat="server" ID="ctl352">
<Items>


<ext:Button runat="server" Icon="Add" Border="false" Text="درج در دیتابیس" Height="50" StandOut="true" ID="Button1">

<ToolTips>
<ext:ToolTip runat="server" Html="StandOut button" ID="ToolTip1" />
</ToolTips>
</ext:Button>

</Items>
</ext:Toolbar>
</TopBar>
<Store>
<ext:Store ID="Store1"
runat="server"
RemoteSort="true"
OnReadData="Store1_ReadData"
PageSize="10">
<Proxy>
<ext:PageProxy />
</Proxy>
<Model>
<ext:Model ID="Model1" runat="server" IDProperty="Id">
<Fields>
<ext:ModelField Name="Id" />
<ext:ModelField Name="FirstName" />
<ext:ModelField Name="LastName" />
<ext:ModelField Name="ImageUrl" />
</Fields>
</ext:Model>
</Model>

</ext:Store>
</Store>
<ColumnModel ID="ColumnModel1" runat="server">

<Columns>
<ext:RowNumbererColumn ID="RowNumbererColumn1" runat="server" />
<ext:Column ID="Column4" runat="server" DataIndex="Id" Text="Id" Width="150" />
<ext:Column ID="Column2" runat="server" DataIndex="FirstName" Text="نام" Width="150" />
<ext:Column ID="Column1" runat="server" DataIndex="LastName" Text="نام خانوادگی" Width="150" />
<ext:ComponentColumn runat="server" Text="ستون مورد نظر" Flex="1" DataIndex="FirstName">
<Component>
<ext:TextField runat="server">
</ext:TextField>

</Component>
</ext:ComponentColumn>
<ext:TemplateColumn DataIndex="ImageUrl" runat="server">

<Template runat="server">
<Html>
<img src="{ImageUrl}" href="#" width="50" height="50" />
</Html>
</Template>
</ext:TemplateColumn>

</Columns>
</ColumnModel>
<Features>
<ext:GridFilters ID="GridFilters1" runat="server">
<Filters>
<ext:NumericFilter DataIndex="Id" />
<ext:StringFilter DataIndex="FirstName" />
<ext:NumericFilter DataIndex="LastName" />
</Filters>

</ext:GridFilters>
</Features>
<BottomBar>
<ext:PagingToolbar ID="PagingToolbar1" runat="server">
<Items>
<ext:Label ID="Label1" runat="server" Text="Page size:" />
<ext:ToolbarSpacer ID="ToolbarSpacer1" runat="server" Width="10" />
<ext:ComboBox ID="ComboBox1" runat="server" Width="80">
<Items>
<ext:ListItem Text="1" />
<ext:ListItem Text="2" />
<ext:ListItem Text="10" />
<ext:ListItem Text="20" />
</Items>
<SelectedItems>
<ext:ListItem Value="10" />
</SelectedItems>
<Listeners>
<Select Handler="#{GridPanel1}.store.pageSize = parseInt(this.getValue(), 10); #{GridPanel1}.store.reload();" />
</Listeners>
</ext:ComboBox>
</Items>
<Plugins>
<ext:ProgressBarPager ID="ProgressBarPager1" runat="server" />
</Plugins>

</ext:PagingToolbar>
</BottomBar>

<SelectionModel>
<ext:CheckboxSelectionModel ID="CheckboxSelectionModel1" runat="server" Mode="Multi" />
</SelectionModel>
</ext:GridPanel>
</Items>
</ext:Window>

</form>

dabirsiaghi
دوشنبه 08 مهر 1392, 08:23 صبح
کسی ext.net کار نکرده؟

soroush.elec
سه شنبه 09 مهر 1392, 21:40 عصر
سلام دوست خوبم
شما نباید در ستون text box بگذاری بجای آن یک column معمولی بگذار و اگر می خواهی که مقدار آن editable باشد از editor استفاده نما:

Ext.create('Ext.grid.Panel', {
store: store,
plugins: [
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit : 1
})
],
columns: [
{
text: "Name",
width:120,
dataIndex: 'Name',
editor : {
xtype: 'textfield',
allowBlank:false
}
},

البته اگه خیلی اصرار داری که چنین کاری کنی باید در renderer گرید موقعی که دارد هر سطر ایجاد می شود فیلدهای مربوط به این ستون را خودت هندل کنی.

dabirsiaghi
چهارشنبه 10 مهر 1392, 06:56 صبح
خیلی سپاسگزارم