
I want to set the DataTextField of a RadComboBox at pageload according to the users prefered language - and keep that value.
So far my code looks like this:
(a small part of the mastertableview of the grid RadGridVehicle)
| <telerik:GridDropDownColumn DataSourceID="sdsHaulierType" |
| DataField="HaulierType" DataType="System.Int32" |
| HeaderText="Haulier type" |
| ReadOnly="true" |
| ListTextField="HaulierTypeName" |
| ListValueField="HaulierTypeID" |
| DropDownControlType="DropDownList" |
| SortExpression="HaulierType" |
| UniqueName="HaulierType" |
| EditFormColumnIndex="0" |
| Visible="true" ForceExtractValue="Always" > |
| <FilterTemplate> |
| <telerik:RadComboBox ID="cbHaulierType" runat="server" |
| AppendDataBoundItems="true" |
| DataSourceID = "sdsHaulierType" |
| DataValueField = "HaulierTypeID" |
| DataTextField = "HaulierTypeName" |
| SelectedValue='<%# ((GridItem)Container).OwnerTableView.GetColumn("HaulierType").CurrentFilterValue %>' |
| OnClientSelectedIndexChanged="HaulierTypeChanged"> |
| <Items> |
| <telerik:RadComboBoxItem Text="All" /> |
| </Items> |
| </telerik:RadComboBox> |
| <telerik:RadScriptBlock ID="sbHaulierType" runat="server"> |
| <script type="text/javascript"> |
| function HaulierTypeChanged(sender,args) |
| { |
| var tableView=$find("<%# ((GridItem)Container).OwnerTableView.ClientID %>"); |
| tableView.filter("HaulierType",args.get_item().get_value(),"EqualTo"); |
| } |
| </script> |
| </telerik:RadScriptBlock> |
| </FilterTemplate> |
| </telerik:GridDropDownColumn> |
| <asp:SqlDataSource ID="sdsHaulierType" runat="server" |
| ConnectionString="<%$ ConnectionStrings:MyConnectionString %>" |
| SelectCommand="SELECT * FROM [HaulierType]"> |
| </asp:SqlDataSource> |
| protected void RadGridVehicle_Load(object sender, EventArgs e) |
| { |
| ddc = (GridDropDownColumn)RadGridVehicle.MasterTableView.Columns.FindByUniqueName("HaulierType"); |
| if (userLang == "da") |
| { |
| ddc.ListTextField = "DAHaulierType"; |
| } |
| else if (userLang == "sv") |
| { |
| ddc.ListTextField = "SVHaulierType"; |
| } |
| } |

<
add path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler, Telerik.Web.UI, Version=2008.3.1125.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" verb="*" validate="false" />
<add path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler, Telerik.Web.UI, Version=2008.3.1125.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" verb="*" validate="false" />
<add verb="*" validate="false" path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler, Telerik.Web.UI" />
<add path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource, Telerik.Web.UI, Version=2008.3.1125.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" verb="*" validate="false" />
<add name="Telerik_Web_UI_DialogHandler_aspx" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler, Telerik.Web.UI, Version=2008.3.1125.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" />
<add name="Telerik_Web_UI_SpellCheckHandler_axd" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler, Telerik.Web.UI, Version=2008.3.1125.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" />
<add name="Telerik_Web_UI_WebResource_axd" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource, Telerik.Web.UI, Version=2008.3.1125.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" />
The relevant lines in the aspx file are:
(top of page)
<%
@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%
@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
(start of body / form)
<body>
<form id="form1" runat="server">
<telerik:RadScriptManager ID="ScriptManager1" runat="server" EnableTheming="True">
</telerik:RadScriptManager>
Skin="Telerik" Width="99%">
<Tools>
<telerik:EditorToolGroup>
<tools>
<telerik:EditorTool Name="AjaxSpellCheck" />
</tools>
</telerik:EditorToolGroup>
</Tools>
<Languages>
<telerik:SpellCheckerLanguage Code="en-US" Title="English" />
</Languages>
<Content>
</Content>
</telerik:RadEditor>
protected void Page_Load(object sender, EventArgs e)
{
txtVisitNotes.Modules.Clear();
lblMessage.Visible =
false;
if (!IsPostBack)
{
txtVisitNotes.Languages.Add(
new SpellCheckerLanguage("en-US", "English"));
txtVisitNotes.SpellCheckSettings.AjaxUrl =
"True";
txtVisitNotes.SpellCheckSettings.SpellCheckProvider =
SpellCheckProvider.PhoneticProvider;
Hi,
I'm using EntityDataSource on RadScheduler and it works fine.
I've added a new resource type "Paciente" (Patient) associated with edsPacientes EntityDataSource as shown on the code bellow.
It works fine for appointment creation: populates Paciente combo box with values from Pacientes table and save the consult with the correct patient.id value (I've checked the database record).
But when I try to edit the newly created appointment the value on "Paciente" combo box is not set. See attached picture.
| <asp:EntityDataSource ID="edsConsultas" runat="server" |
| ConnectionString="name=jaruche1Entities" |
| DefaultContainerName="jaruche1Entities" EnableDelete="True" EnableInsert="True" |
| EnableUpdate="True" EntitySetName="Consultas" EntityTypeFilter="Consulta"> |
| </asp:EntityDataSource> |
| <asp:EntityDataSource ID="edsPacientes" runat="server" |
| ConnectionString="name=jaruche1Entities" |
| DefaultContainerName="jaruche1Entities" EnableDelete="True" EnableInsert="True" |
| EnableUpdate="True" EntitySetName="Pacientes" EntityTypeFilter="Paciente"> |
| </asp:EntityDataSource> |
| <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" Height="300px" RenderMode="Inline" |
| Width="100%"> |
| <telerik:RadScheduler ID="RadScheduler1" runat="server" DataEndField="Termino" DataKeyField="Id" |
| DataSourceID="edsConsultas" DataStartField="Inicio" DataSubjectField="Observacoes" |
| Skin="Office2007" StartInsertingInAdvancedForm="True" SelectedView="WeekView"> |
| <ResourceTypes> |
| <telerik:ResourceType DataSourceID="edsPacientes" ForeignKeyField="Paciente.Id" |
| KeyField="Id" Name="Paciente" TextField="Nome" /> |
| </ResourceTypes> |
| </telerik:RadScheduler> |
| </telerik:RadAjaxPanel> |

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
<script type ="text/javascript" >
var custodian =
{
CustodianID:null,
EmailAddressID: null,
EmailAddress: null,
create: function() {
var obj = new Object;
obj.CustodianID = 0;
obj.EmailAddressId = "";
obj.EmailAddress = "";
}
};
function updateChanges() {
PageMethods.AddCustodian("asd", updateGrid);
//MyWebService.UpdateEmployeeByEmployee(getValues(), updateGrid);
}
function updateGrid(result) {
var tableView = $find("<%= rgCustodians.ClientID %>").get_masterTableView();
tableView.set_dataSource(result);
tableView.dataBind();
//var grid = $find("<%= rgCustodians.ClientID %>");
//grid.repaint();
}
</script>
</telerik:RadCodeBlock>
<span><telerik:RadTextBox ID="tbCustomdian" runat="server" Width ="200px">
</telerik:RadTextBox></span>
<span style ="margin-left:5px; vertical-align:middle" >
<asp:Button ID="btnAddCustodian" runat="server"
Text="<%$Resources:Labels, add %>" Width ="100px"
OnClientClick="updateChanges(); return false;" /></span>
<telerik:RadGrid ID="rgCustodians" runat="server" AutoGenerateColumns="False"
AutoGenerateDeleteColumn="False" GridLines="None"
ondeletecommand="rgCustodians_DeleteCommand"
onneeddatasource="rgCustodians_NeedDataSource" Width="100%">
<MasterTableView Width="100%" TableLayout="Fixed" >
<Columns>
<telerik:GridBoundColumn HeaderText="EmailAddressId" Visible ="False" DataField="EmailAddressId" UniqueName="EmailAddressId" ></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Cutodians" UniqueName="EmailAddress" DataField="EmailAddress"></telerik:GridBoundColumn>
<telerik:GridButtonColumn Display ="true" Visible ="true" Text="deleee" />
</Columns>
<NoRecordsTemplate>
<div> <asp:Literal ID="Literal1" runat="server" Text="<%$Resources:Labels, norecords%>" /> </div>
</NoRecordsTemplate>
</MasterTableView>
</telerik:RadGrid>
Did I do something wrong?
Thanks in advance
Wei
function
itemsRequested(sender, e) {
if (sender.get_items().get_count() == 0) {
sender.set_enabled(
false);
return;
}
}
This actually runs, but the UI of the combo doesn't change to the new style... do I have to programmably do it?
Thanks.