最近,学习telerik控件。在这个学习过程中,像GridTextBoxColumnEditor这些编辑是用到的修改样式的控件,网上讲解的不是很多。当然了,本人也不是很牛叉。还是个菜鸟中的菜鸟菜鸟。。。。下面就自己学习的展示一下。
GridTextBoxColumnEditor这个控件说白了就是和你运用的RadGrid之类的控件合用才会有效果。用的最多的就是RadGrid。它的作用是在你编辑的时候修改那个GridBoundColumn里的textbox的样式。如图1,这个是原始的编辑的textbox。
图1
如图2是插入了GridTextBoxColumnEditor 控件并且设置了一些样式。而作者那个我没有设置,因为这样大家可以很明确的看出不同之处。
下面就来看看代码。
<telerik:RadGrid ID="BookId" GridLines="None" runat="server" AllowPaging="True" AutoGenerateColumns="False"
CellSpacing="0" Culture="zh-CN" DataSourceID="SqlDataSource1" Skin="Metro">
<PagerStyle Mode="NextPrevAndNumeric" />
<ClientSettings>
<Selecting AllowRowSelect="True" />
</ClientSettings>
<MasterTableView Width="100%" CommandItemDisplay="Top" HorizontalAlign="NotSet" AutoGenerateColumns="False"
CommandItemSettings-ShowRefreshButton="false" EditMode="InPlace" DataKeyNames="BookId" DataSourceID="SqlDataSource1">
<CommandItemSettings ExportToPdfText="Export to PDF" ShowRefreshButton="False"></CommandItemSettings>
<RowIndicatorColumn Visible="True" FilterControlAltText="Filter RowIndicator column"></RowIndicatorColumn>
<ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column"></ExpandCollapseColumn>
<Columns>
<telerik:GridEditCommandColumn ButtonType="ImageButton" UniqueName="EditCommandColumn" HeaderText="编辑">
</telerik:GridEditCommandColumn>
<telerik:GridBoundColumn DataField="BookName" HeaderText="书名" UniqueName="BookName"
ColumnEditorID="textBoxColumnEditor">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="BookAuthor" HeaderText="作者" UniqueName="BookAuthor"
ColumnEditorID="">
</telerik:GridBoundColumn>
<telerik:GridButtonColumn ConfirmText="" ConfirmDialogType="RadWindow" ConfirmTitle="Delete"
ButtonType="ImageButton" CommandName="Delete" Text="Delete" UniqueName="DeleteColumn">
</telerik:GridButtonColumn>
</Columns>
<EditFormSettings>
<EditColumn UniqueName="EditCommandColumn1" FilterControlAltText="Filter EditCommandColumn1 column"></EditColumn>
</EditFormSettings>
</MasterTableView>
<FilterMenu EnableImageSprites="False"></FilterMenu>
</telerik:RadGrid>
<telerik:GridTextBoxColumnEditor ID="textBoxColumnEditor" runat="server">
<TextBoxStyle
BackColor="#edffc3"
BorderColor="#ecbb0d"
BorderStyle="Solid"
ForeColor="#7fa822" />
</telerik:GridTextBoxColumnEditor>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=PC-200501010031;Initial Catalog=Library;Integrated Security=True" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [BookId], [BookName], [BookAuthor],
[BookPress], [BookNumber], [BookBorrowTime], [BookTime], [SearchHot] FROM [Bd_Book]"></asp:SqlDataSource>
数据库我是随便绑定的。上面是一个完整的radgrid。
下面的GridTextBoxColumnEditor 我添加了一些样式。
<telerik:GridTextBoxColumnEditor ID="textBoxColumnEditor" runat="server">
<TextBoxStyle
BackColor="#edffc3"
BorderColor="#ecbb0d"
BorderStyle="Solid"
ForeColor="#7fa822" />
</telerik:GridTextBoxColumnEditor>
我们要想在radgrid列里面引用的话就是在如下代码中添加ColumnEditorID="你的GridTextBoxColumnEditor空间的ID"。就好了。
<telerik:GridBoundColumn DataField="BookName" HeaderText="书名" UniqueName="BookName"
ColumnEditorID="textBoxColumnEditor">
</telerik:GridBoundColumn>