<%@ Control Language="C#" AutoEventWireup="true" Inherits="EIMS.RadTest, EIMS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f4da00116c38ec5" %>
<%@ Register Assembly="Telerik.Web.UI, Version=2009.1.311.0, Culture=neutral, PublicKeyToken=29ac1a93ec063d92"
Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<telerik:RadTabStrip ID="RadTabStrip1" runat="server" MultiPageID="RadMultiPage1">
<Tabs>
<telerik:RadTab Text="First" ID="RadTabFirst" runat="server" >
</telerik:RadTab>
<telerik:RadTab Text="Second" ID="RadTabSecond" runat="server" >
</telerik:RadTab>
<telerik:RadTab Text="Third" ID="RadTabThird" runat="server" >
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage ID="RadMultiPage1" runat="server">
<telerik:RadPageView ID="RadPageView1" runat="server" Selected="true">
<telerik:RadAjaxPanel ID="RadAjaxPanel2" runat="server" >
<telerik:RadComboBox ID="RadComboBox1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="RadComboBox1_SelectedIndexChanged" >
<Items>
<telerik:RadComboBoxItem Text="Rajesh1" Value="1"/>
<telerik:RadComboBoxItem Text="Rajesh2" Value="2"/>
<telerik:RadComboBoxItem Text="Rajesh3" Value="3"/>
</Items>
</telerik:RadComboBox>
<p/>
<asp:Label ID="Lable1" runat="server" Text="Lable1"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</telerik:RadAjaxPanel>
</telerik:RadPageView>
<telerik:RadPageView ID="RadPageView2" runat="server">
RadPageView2
</telerik:RadPageView>
<telerik:RadPageView ID="RadPageView3" runat="server">
RadPageView3
</telerik:RadPageView>
</telerik:RadMultiPage>
<telerik:RadAjaxManagerProxy ID="AjaxManagerProxy1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadComboBox1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadTabStrip1" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManagerProxy>
Code Behind:
using
System;
using
System.Collections.Generic;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
Telerik.Web.UI;
namespace
EIMS
{
public class RadTest : System.Web.UI.UserControl
{
protected RadTab RadTabSecond;
protected RadTab RadTabThird;
protected RadTab RadTabFirst;
protected Label Lable1;
protected Button Button1;
protected RadComboBox RadComboBox1;
protected RadAjaxManager RadAjaxManager1;
protected RadMultiPage RadMultiPage1;
protected RadPageView RadPageView1;
protected RadPageView RadPageView2;
protected RadPageView RadPageView3;
protected RadTabStrip RadTabStrip1;
protected RadAjaxManagerProxy AjaxManagerProxy1;
protected void Page_Load(object sender, EventArgs e)
{
RadTabThird.Visible =
false;
RadTabSecond.Visible =
false;
}
protected void Button1_Click(object sender, EventArgs e)
{
Lable1.Text =
"in second panel";
RadComboBox1.Items.Add(
new Telerik.Web.UI.RadComboBoxItem(Convert.ToString("Rajesh" + (RadComboBox1.Items.Count + 1)), Convert.ToString(RadComboBox1.Items.Count + 1)));
}
protected void RadComboBox1_SelectedIndexChanged(object o, Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs e)
{
Lable1.Text = RadComboBox1.Text;
RadTabThird.Visible =
true;
RadTabSecond.Visible =
true;
}
}
}
Web Part Code:
using
System;
using
System.Runtime.InteropServices;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Xml.Serialization;
using
Microsoft.SharePoint;
using
Microsoft.SharePoint.WebControls;
using
Microsoft.SharePoint.WebPartPages;
using
Telerik.Web.UI;
namespace
EIMS
{
[
Guid("2a14a7a4-4ef6-4b1a-b698-4d0f66719d34")]
public class RadPanelTest : System.Web.UI.WebControls.WebParts.WebPart
{
private Control _childControl = null;
private ScriptManager _AjaxManager;
private RadAjaxManager RadAjaxManager1;
public RadPanelTest()
{
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_AjaxManager =
ScriptManager.GetCurrent(this.Page);
if (_AjaxManager == null)
{
_AjaxManager =
new ScriptManager();
_AjaxManager.EnablePartialRendering =
true;
_AjaxManager.AsyncPostBackTimeout = 120;
Page.ClientScript.RegisterStartupScript(
typeof(RadPanelTest), this.ID, "_spOriginalFormAction = document.forms[0].action;", true);
if (this.Page.Form != null)
{
string formOnSubmitAtt = this.Page.Form.Attributes["onsubmit"];
if (!string.IsNullOrEmpty(formOnSubmitAtt) && formOnSubmitAtt == "return _spFormOnSubmitWrapper();")
{
this.Page.Form.Attributes["onsubmit"] = "_spFormOnSubmitWrapper();";
}
this.Page.Form.Controls.AddAt(0, _AjaxManager);
}
}
RadAjaxManager1 =
RadAjaxManager.GetCurrent(this.Page);
if (RadAjaxManager1 == null)
{
RadAjaxManager1 =
new RadAjaxManager();
this.Page.Form.Controls.AddAt(0, RadAjaxManager1);
}
}
protected override void CreateChildControls()
{
base.CreateChildControls();
_childControl = Page.LoadControl(
"/UserControl/RadTest.ascx");
if (_childControl != null)
Controls.AddAt(0, _childControl);
}
}
}
| public class myAppointment |
| { |
| private object m_id; |
| public object ID |
| { |
| get { return m_id; } |
| set { m_id = value; } |
| } |
| ... |
| private DateTime m_start; |
| public DateTime StartsOn |
| { |
| get { return m_start; } |
| set { m_start = value; } |
| } |
| ... |
| private myAppointmentFilter m_type = myAppointmentFilter.none; |
| public myAppointmentFilter Type |
| { |
| get { return m_type; } |
| set { m_type = value; } |
| } |
| ... |
| private List<int> m_attachedFiles = null; |
| public List<int> AttachedFiles |
| { |
| get { return m_attachedFiles; } |
| set { m_attachedFiles = value; } |
| } |
| } |
| public enum myAppointmentFilter {none, globalFollowUps, personalFollowUps, freeAppointments } public class DBWrapper { public List<myAppointment> LoadAppointments(int p_userID, myAppointmentFilter p_appFilter, DateTime p_start, DateTime p_end) { List<myAppointment> appointments = new List<myAppointment>(); switch (p_appFilter) { case myAppointmentFilter.freeAppointments: appointments.AddRange(LoadFreeAppointments(p_userID, p_start,p_end)); break; case myAppointmentFilter.personalFollowUps: appointments.AddRange(LoadFollowUps(p_start, p_end, true, p_userID)); break; case myAppointmentFilter.globalFollowUps: appointments.AddRange(LoadFollowUps(p_start, p_end, false, -1)); break; } return appointments; } private List<myAppointment> LoadFreeAppointments(int p_userID, DateTime p_start, DateTime p_end) {...} private List<myAppointment> LoadFollowUps(DateTime p_start, DateTime p_end, bool p_personal, int p_userID) {...} } |
| public partial class scheduler : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { m_currentAppointments = new List<myAppointment>(); //Nur Appointments der ausgewählten Filter laden foreach (int key in m_filterIDs.Keys) { CheckBox cb = PanelBar.Items[0].Items[0].FindControl(m_filterIDs[key]) as CheckBox; if (cb.Checked) { switch (m_filterIDs[key]) { case "cbFollowUps": m_currentAppointments.AddRange(m_schedulerDBDataProvider.LoadAppointments(1, myAppointmentFilter.globalFollowUps, DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3))); break; case "cbPersonalFollowUps": m_currentAppointments.AddRange(m_schedulerDBDataProvider.LoadAppointments(1, myAppointmentFilter.personalFollowUps, DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3))); break; case "cbFreeAppointments": m_currentAppointments.AddRange(m_schedulerDBDataProvider.LoadAppointments(1, myAppointmentFilter.freeAppointments, DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3))); break; } } } CreateAppointments(); } ... private void CreateAppointments() { int id = 0; foreach (myAppointment app in m_currentAppointments) { //ExtAppointment inherits of Telerik.Web.UI.Appointment ExtAppointment telerikApp = new ExtAppointment(); telerikApp.ID = id; telerikApp.DBID = app.DBID; telerikApp.Title = app.Title; telerikApp.Start = app.StartsOn.ToUniversalTime(); telerikApp.End = app.EndsOn.ToUniversalTime(); telerikApp.Description = app.Description; telerikApp.UserID = app.UserID; telerikApp.Type = app.Type; switch (app.Type) { case myAppointmentFilter.globalFollowUps: telerikApp.CssClass = "rsCategoryRed"; telerikApp.AllowDelete = false; break; case myAppointmentFilter.personalFollowUps: telerikApp.CssClass = "rsCategoryOrange"; telerikApp.AllowDelete = false; break; case myAppointmentFilter.freeAppointments: telerikApp.CssClass = "rsCategoryGreen"; break; } RadScheduler1.InsertAppointment(telerikApp); id++; } } } |
| protected ExtAppointment Appointment |
| { |
| get |
| { |
| SchedulerFormContainer container = SchedulerFormContainer)BindingContainer; |
| return container.Appointment as ExtAppointment; |
| } |
| } |
| <telerik:RadGrid ID="rgTemplate" runat="server" AutoGenerateColumns="False" |
| GridLines="None" AllowPaging="True" AllowSorting="True" |
| PageSize="22" CellPadding="0" AllowMultiRowSelection="True" |
| OnNeedDataSource="rgTemplate_NeedDataSource" Skin="Vista" Width="100%"> |
| <MasterTableView ShowFooter="True" |
| cellspacing="-1" |
| DataKeyNames="MailExternalTemplateId" |
| ClientDataKeyNames="MailExternalTemplateId"> |
| <Columns> |
| <telerik:GridTemplateColumn ItemStyle-Width="1%"> |
| <ItemTemplate> |
| <asp:ImageButton ID="imgTemplate" runat="server" ImageUrl="~/Images/ico_16_2010_d.gif" /> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridBoundColumn |
| UniqueName="Name" |
| SortExpression="Name" HeaderText="Name" DataField="Name" ItemStyle-BackColor="#EAF3FF" |
| ItemStyle-Width="25%"> |
| </telerik:GridBoundColumn> |
| <telerik:GridTemplateColumn HeaderText="Description" UniqueName="Description" SortExpression="Description" ItemStyle-Width="20%"> |
| <ItemTemplate> |
| <asp:Label ID="lblDescription" runat="server" Text='<%# Eval("Description")%>'></asp:Label> |
| <asp:HiddenField ID="hdTemplateId" runat="server" Value='<%# Eval("MailExternalTemplateId")%>' /> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| .. |
