Carrotware.CMS.UI.Controls.ListItemNavText.OnDataBinding C# (CSharp) Метод

OnDataBinding() защищенный Метод

protected OnDataBinding ( EventArgs e ) : void
e System.EventArgs
Результат void
        protected override void OnDataBinding(EventArgs e)
        {
            RepeaterItem container = (RepeaterItem)this.NamingContainer;

            string sFieldValue = string.Empty;
            string sValue = "";
            string sField = DataField.ToString();

            try {
                if (sField.StartsWith("Author_") || sField.StartsWith("Credit_")) {
                    SiteNav sn = (SiteNav)DataBinder.GetDataItem(container);
                    if (sn != null) {
                        ExtendedUserData usr = null;
                        if (sField.StartsWith("Credit_")) {
                            sField = DataField.ToString().Replace("Credit_", String.Empty);
                            usr = sn.GetCreditUserInfo();
                        }

                        if (sField.StartsWith("Author_") || usr == null) {
                            sField = DataField.ToString().Replace("Credit_", String.Empty).Replace("Author_", String.Empty);
                            usr = sn.GetUserInfo();
                        }

                        if (usr == null) {
                            usr = sn.BylineUser;
                        }

                        if (usr != null) {
                            object obj = ReflectionUtilities.GetPropertyValue(usr, sField);
                            if (obj != null) {
                                sValue = obj.ToString();
                            }
                        }
                    }

                    sFieldValue = String.Format(FieldFormat, sValue);
                } else {
                    sFieldValue = String.Format(FieldFormat, DataBinder.Eval(container, "DataItem." + sField));
                }
            } catch {
                if (!SiteData.IsWebView) {
                    sFieldValue = sField;
                }
            }

            this.Text = sFieldValue;

            string sFileName = DataBinder.Eval(container, "DataItem.FileName").ToString();
            Guid pageID = new Guid(DataBinder.Eval(container, "DataItem.Root_ContentID").ToString());

            this.NavigateUrl = sFileName;
            this.ContentID = pageID;

            base.OnDataBinding(e);
        }