<
telerik:RadGrid
ID
=
"RadGrid1"
AutoGenerateColumns
=
"False"
AutoGenerateHierarchy
=
"True"
AllowMultiRowEdit
=
"true"
Width
=
"70%"
OnNeedDataSource
=
"RadGrid1_NeedDataSource"
runat
=
"server"
>
<
ClientSettings
EnableAlternatingItems
=
"false"
>
<
Scrolling
UseStaticHeaders
=
"true"
/>
</
ClientSettings
>
<
MasterTableView
DataKeyNames
=
"CategoryId"
EditMode
=
"InPlace"
TableLayout
=
"Fixed"
>
<
DetailTables
>
<
telerik:GridTableView
DataKeyNames
=
"CategoryId,TypeId"
runat
=
"server"
>
<
ParentTableRelation
>
<
telerik:GridRelationFields
DetailKeyField
=
"CategoryId"
MasterKeyField
=
"CategoryId"
/>
</
ParentTableRelation
>
<
DetailTables
>
<
telerik:GridTableView
DataKeyNames
=
"TypeId,ContactName"
runat
=
"server"
>
<
ParentTableRelation
>
<
telerik:GridRelationFields
DetailKeyField
=
"TypeId"
MasterKeyField
=
"TypeId"
/>
</
ParentTableRelation
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"TypeId"
DataType
=
"System.String"
ReadOnly
=
"true"
Visible
=
"false"
UniqueName
=
"TypeId"
/>
<
telerik:GridBoundColumn
DataField
=
"ContactName"
DataType
=
"System.String"
HeaderText
=
"Contact Name"
ReadOnly
=
"true"
UniqueName
=
"ContactName"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"Email"
DataType
=
"System.Boolean"
HeaderText
=
"Email"
HeaderStyle-HorizontalAlign
=
"Center"
ItemStyle-HorizontalAlign
=
"Center"
ReadOnly
=
"false"
UniqueName
=
"Email"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"SMS"
DataType
=
"System.Boolean"
HeaderText
=
"SMS"
HeaderStyle-HorizontalAlign
=
"Center"
ItemStyle-HorizontalAlign
=
"Center"
ReadOnly
=
"false"
UniqueName
=
"SMS"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"NotifyByEmail"
DataType
=
"System.Boolean"
HeaderText
=
"Notify By Email"
HeaderStyle-HorizontalAlign
=
"Center"
ItemStyle-HorizontalAlign
=
"Center"
ReadOnly
=
"false"
UniqueName
=
"NotifyByEmail"
/>
</
Columns
>
</
telerik:GridTableView
>
</
DetailTables
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"CategoryId"
DataType
=
"System.String"
ReadOnly
=
"true"
Visible
=
"false"
UniqueName
=
"CategoryId"
/>
<
telerik:GridBoundColumn
DataField
=
"TypeId"
DataType
=
"System.String"
ReadOnly
=
"true"
Visible
=
"false"
UniqueName
=
"TypeId"
/>
<
telerik:GridBoundColumn
DataField
=
"TypeName"
DataType
=
"System.String"
HeaderText
=
"Type Name"
ReadOnly
=
"true"
UniqueName
=
"TypeName"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"NoEncryption"
DataType
=
"System.Boolean"
HeaderText
=
"Encryption Not Required"
HeaderStyle-HorizontalAlign
=
"Center"
ItemStyle-HorizontalAlign
=
"Center"
ReadOnly
=
"false"
UniqueName
=
"NoEncryption"
/>
</
Columns
>
</
telerik:GridTableView
>
</
DetailTables
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"CategoryId"
DataType
=
"System.String"
ReadOnly
=
"true"
Visible
=
"false"
UniqueName
=
"CategoryId"
/>
<
telerik:GridBoundColumn
DataField
=
"CategoryName"
DataType
=
"System.String"
HeaderText
=
"Category Name"
ReadOnly
=
"true"
UniqueName
=
"CategoryName"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
public
partial
class
HierarchyWithDS : System.Web.UI.Page
{
private
DataSet _dataSet =
null
;
protected
void
Page_Load(
object
sender, EventArgs e)
{
if
(!IsPostBack)
{
if
(_dataSet ==
null
) _dataSet = CreateDataSet();
Session[
"DATASET"
] = _dataSet;
}
else
{
_dataSet = (DataSet)Session[
"DATASET"
];
}
SetEditMode();
}
protected
void
RadGrid1_NeedDataSource(
object
source, GridNeedDataSourceEventArgs e)
{
this
.RadGrid1.DataSource = _dataSet;
}
private
void
SetEditMode()
{
int
size = 0;
for
(
int
i = 0; i < _dataSet.Tables.Count; i++)
{
size += _dataSet.Tables[i].Rows.Count;
}
for
(
int
i = 0; i < size; i++)
{
this
.RadGrid1.EditIndexes.Add(i);
}
}
private
DataSet CreateDataSet()
{
DataSet dataSet =
new
DataSet();
// Category table
DataTable dtCategory =
new
DataTable(
"Category"
);
dtCategory.Columns.Add(
"CategoryId"
,
typeof
(
string
));
dtCategory.Columns.Add(
"CategoryName"
,
typeof
(
string
));
dataSet.Tables.Add(dtCategory);
foreach
(Category category
in
Category.Load())
{
DataRow row = dataSet.Tables[
"Category"
].NewRow();
row[
"CategoryId"
] = category.CategoryId;
row[
"CategoryName"
] = category.CategoryName;
dataSet.Tables[
"Category"
].Rows.Add(row);
}
// Type table
DataTable dtType =
new
DataTable(
"Type"
);
dtType.Columns.Add(
"CategoryId"
,
typeof
(
string
));
dtType.Columns.Add(
"TypeId"
,
typeof
(
string
));
dtType.Columns.Add(
"TypeName"
,
typeof
(
string
));
dtType.Columns.Add(
"NoEncryption"
,
typeof
(
bool
));
dataSet.Tables.Add(dtType);
foreach
(Category category
in
Category.Load())
{
foreach
(Type type
in
Type.Load())
{
if
(category.CategoryId == type.CategoryId)
{
DataRow row = dataSet.Tables[
"Type"
].NewRow();
row[
"CategoryId"
] = type.CategoryId;
row[
"TypeId"
] = type.TypeId;
row[
"TypeName"
] = type.TypeName;
row[
"NoEncryption"
] = type.NoEncryption;
dataSet.Tables[
"Type"
].Rows.Add(row);
}
}
}
// Subscription table
DataTable dtSubscription =
new
DataTable(
"Subscription"
);
dtSubscription.Columns.Add(
"TypeId"
,
typeof
(
string
));
dtSubscription.Columns.Add(
"ContactName"
,
typeof
(
string
));
dtSubscription.Columns.Add(
"Email"
,
typeof
(
bool
));
dtSubscription.Columns.Add(
"SMS"
,
typeof
(
bool
));
dtSubscription.Columns.Add(
"NotifyByEmail"
,
typeof
(
bool
));
dataSet.Tables.Add(dtSubscription);
foreach
(Type type
in
Type.Load())
{
foreach
(Subscription subscription
in
Subscription.Load())
{
if
(type.TypeId == subscription.TypeId)
{
DataRow row = dataSet.Tables[
"Subscription"
].NewRow();
row[
"TypeId"
] = subscription.TypeId;
row[
"ContactName"
] = subscription.ContactName;
row[
"Email"
] = subscription.Email;
row[
"SMS"
] = subscription.SMS;
row[
"NotifyByEmail"
] = subscription.NotifyByEmail;
dataSet.Tables[
"Subscription"
].Rows.Add(row);
}
}
}
// Table relations
dataSet.Relations.Add(
new
DataRelation(
"Category-Type"
, dataSet.Tables[
"Category"
].Columns[
"CategoryId"
], dataSet.Tables[
"Type"
].Columns[
"CategoryId"
]));
dataSet.Relations.Add(
new
DataRelation(
"Type-Subscription"
, dataSet.Tables[
"Type"
].Columns[
"TypeId"
], dataSet.Tables[
"Subscription"
].Columns[
"TypeId"
]));
return
dataSet;
}
}
public
class
Category
{
public
string
CategoryId {
get
;
set
; }
public
string
CategoryName {
get
;
set
; }
public
Category(
string
categoryId =
null
,
string
categoryName =
null
)
{
CategoryId = categoryId;
CategoryName = categoryName;
}
public
static
List<Category> Load()
{
List<Category> category =
new
List<Category>();
category.Add(
new
Category(
"NEM_STATEMENTS"
,
"NEM Statements"
));
return
category;
}
}
public
class
Type
{
public
string
CategoryId {
get
;
set
; }
public
string
TypeId {
get
;
set
; }
public
string
TypeName {
get
;
set
; }
public
bool
NoEncryption {
get
;
set
; }
public
Type(
string
categoryId =
null
,
string
typeId =
null
,
string
typeName =
null
,
bool
noEncryption =
false
)
{
CategoryId = categoryId;
TypeId = typeId;
TypeName = typeName;
NoEncryption = noEncryption;
}
public
static
List<Type> Load()
{
List<Type> type =
new
List<Type>();
type.Add(
new
Type(
"NEM_STATEMENTS"
,
"NEM_STMT_PRELIM"
,
"Preliminary"
));
type.Add(
new
Type(
"NEM_STATEMENTS"
,
"NEM_STMT_FINAL"
,
"Final"
));
type.Add(
new
Type(
"NEM_STATEMENTS"
,
"NEM_STMT_REVISION"
,
"Revision"
));
return
type;
}
}
public
class
Subscription
{
public
string
TypeId {
get
;
set
; }
public
string
ContactName {
get
;
set
; }
public
bool
Email {
get
;
set
; }
public
bool
SMS {
get
;
set
; }
public
bool
NotifyByEmail {
get
;
set
; }
public
Subscription(
string
typeId =
null
,
string
contactName =
null
,
bool
email =
false
,
bool
sms =
false
,
bool
notifyByEmail =
false
)
{
TypeId = typeId;
ContactName = contactName;
Email = email;
SMS = sms;
NotifyByEmail = notifyByEmail;
}
public
static
List<Subscription> Load()
{
List<Subscription> subscription =
new
List<Subscription>();
subscription.Add(
new
Subscription(
"NEM_STMT_PRELIM"
,
"Inger Wills"
));
subscription.Add(
new
Subscription(
"NEM_STMT_PRELIM"
,
"Keith Armstrong"
));
subscription.Add(
new
Subscription(
"NEM_STMT_PRELIM"
,
"Lance McMinn"
));
subscription.Add(
new
Subscription(
"NEM_STMT_FINAL"
,
"Inger Wills"
));
subscription.Add(
new
Subscription(
"NEM_STMT_FINAL"
,
"Keith Armstrong"
));
subscription.Add(
new
Subscription(
"NEM_STMT_FINAL"
,
"Lance McMinn"
));
subscription.Add(
new
Subscription(
"NEM_STMT_REVISION"
,
"Inger Wills"
));
subscription.Add(
new
Subscription(
"NEM_STMT_REVISION"
,
"Keith Armstrong"
));
subscription.Add(
new
Subscription(
"NEM_STMT_REVISION"
,
"Lance McMinn"
));
return
subscription;
}
}
RadWindowManager1.OnClientClose = "FuncName";which generates this in the client:
<
telerik:RadComboBox ID="ddlsample" runat="server" EmptyMessage="Select" DataTextField="FirstName" DataValueField="ReferalID"
EnableLoadOnDemand="true" TabIndex="133" Width="200px">
<WebServiceSettings Method="GetRefDoc" Path="RefDoc.asmx" />
</telerik:RadComboBox>
// Webservice RefDoc.asmx
[
WebMethod]
public DataSet GetRefDoc()
{
DataSet ds = new DataSet();
ds =
GlobalGui.Instance.FillReferralDoctorCombobox1();
return ds;
}
this is my method calling to fill
public
DataSet FillReferralDoctorCombobox1()
{
DataSet dset = aaa.ProcessSelectStatements("Mystored_Procedure");
return dset;
}
i must want to store DataValueField to database and also i've to do some autopostback event for some controls.
Please Give me the solution or suggession how to use webservice ..
as soon as possible.. need to implement.
Regards,
Ashok Anbarasu
<
telerik:RadMaskedTextBox
ID
=
"RMTBZip"
runat
=
"server"
Mask
=
"#####-####"
SelectionOnFocus
=
"None"
/>
,_recreateControls:function(e){var d=e.getElementsByTagName("*");
for(var a=0,c=d.length;
a<c;
a++){var f=d[a];
if(typeof(f.id)!="undefined"&&f.id!=""){var b=$find(f.id);
if(!b){continue;
}b._element=$get(f.id);
}}},getColumnByUniqueName:function(a){for(var b=0;
b<this.get_columns().length;
b++){if(this.get_columns()[b].get_element().UniqueName==a){return this.get_columns()[b];
}}return null;
Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET CLR 1.1.4322)
Timestamp: Fri, 17 Sep 2010 16:56:07 UTC
Message: 'this.get_columns()[...].get_element().UniqueName' is null or not an object
Line: 3398
Char: 6
Code: 0
URI: https://mini.salesnet.com/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d3.5.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-US%3ad0c4ca6e-6b5d-49b6-922d-5244924fb100%3aea597d4b%3ab25378d2%3bTelerik.Web.UI%2c+Version%3d2010.2.713.35%2c+Culture%3dneutral%2c+PublicKeyToken%3d121fae78165ba3d4%3aen-US%3a7302be66-e7a1-4bc1-8280-71f03d66eba0%3a16e4e7cd%3a58366029%3af7645509%3a24ee1bba%3a1e771326%3aaa288e2d%3ae330518b%3ac8618e41%3ae4f8f289%3aed16cbdc