User Control
public partial class LokasyonUserControl : System.Web.UI.UserControl
{
public event System.EventHandler SelectedItemDegisti;
protected void LokasyonTipiRComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
LokasyonTipiId = Convert.ToInt64(LokasyonTipiRComboBox.SelectedValue);
if (this.SelectedItemDegisti != null)
this.SelectedItemDegisti(sender, e);
}
}
User Control Kullanan Sayfa
protected override void OnInit(EventArgs e)
{
LokasyonUserControl.AutoPostBack = true;
LokasyonUserControl.SelectedItemDegisti += new EventHandler(LokasyonUserControlTarifeTipiDegistigindeYapilacakIsler);
}
protected void LokasyonUserControlTarifeTipiDegistigindeYapilacakIsler(object sender, EventArgs e)
{
//((Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs)(e)).Value 'nün içinde LokasyonId 7 olarak geliyor. Bu da kullanılabilir.
if (LokasyonUserControl.LokasyonTipiId.ToString() == ((long)Distributable.Enumerations.EIMISEnum.LokasyonTipi.IcKonteynerMerkezi).ToString())
{
RejimRRadioButtonList.SelectedIndex = 0;
RejimRRadioButtonList.Enabled = false;
}
else
{
RejimRRadioButtonList.Enabled = true;
}
}
Yakalan Event de çağırılan metod, sayfada bir kontrolün görselliği ile ilgili bir değişiklik yapıyorsa, User control ve görselliği etkilenen kontrol ajax kontrolü içine alınmalıdır.
<asp:Content ID="Content1" ContentPlaceHolderID="AjaxContent" runat="server">
<telerik:RadAjaxManagerProxy ID="TanımlamaRadAjaxManagerProxy" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="LokasyonUserControl">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="LokasyonUserControl" />
<telerik:AjaxUpdatedControl ControlID="RejimRRadioButtonList" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManagerProxy>
</asp:Content>