We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon

Foreign Key Lookup when binding GGC to Business Object collection

I am having problems figuring out the relations to use in order to generate a Lookup dropdown in the GGC. I was able to figure out how to do the Parent/Child relationship using the UniformChildList, but the other relationship types don''t seem to work unless binding to a DataSet. Has anyone done this before? I can post sample code if what I''m looking for is unclear. Thank you. Jay

4 Replies

ST stanleyj Syncfusion Team January 31, 2006 10:02 AM UTC

Hi Jay, Please refer the sample in \Syncfusion\Essential Studio\4.1.0.51\windows\Grid.Grouping.Windows\Samples\StrongTypedCollection folder. Best regards, Stanley


JM Jay Mooney January 31, 2006 02:28 PM UTC

Hi Stanley, I did refer to that sample. The sample shows you how to setup a Master/Detail relationship. But it doesn''t show you how to do a Lookup relationship. Any other suggestions?


JM Jay Mooney January 31, 2006 02:33 PM UTC

Specifically I''m looking for how to use ListItemReference or ForeignKeyReference with my business objects.


JM Jay Mooney January 31, 2006 03:39 PM UTC

I figured it out. Here''s my solution in case anyone else can benefit from it: _countries is a BindingList Country has some public fields, and a "UserId" column that is a reference to the _users collection. _users is a BindingList User has 2 fields Id and Name Step 1: Add both collections as sourceListset items for the GGC gridGroupingControl1.SourceListSet.Add(new SourceListSetEntry("COUNTRIES", _countries)); gridGroupingControl1.Engine.SourceListSet.Add(new SourceListSetEntry("USERS", _users)); Step 2: Define the GridRelationDescriptor, using a ForeignKeyReference, and setting the RelationKeys appropriately for the _users and _countries collections. GridRelationDescriptor rdLookup = new GridRelationDescriptor(); rdLookup.Name = "UsersFKLookup"; rdLookup.MappingName = "Users"; rdLookup.ChildTableName = "USERS"; rdLookup.RelationKind = RelationKind.ForeignKeyReference; rdLookup.RelationKeys.Add("UserId", "Id"); rdLookup.ChildTableDescriptor.VisibleColumns.Add("Name"); rdLookup.ChildTableDescriptor.SortedColumns.Add("Name"); rdLookup.ChildTableDescriptor.AllowEdit = false; rdLookup.ChildTableDescriptor.AllowNew = false; Step 3: Add the relation descriptor to the table''s relations. gridGroupingControl1.TableDescriptor.Relations.Add(rdLookup); Step 4: Associate the _countries collection with the GGC''s DataSource. gridGroupingControl1.DataSource = _countries;

Loader.
Live Chat Icon For mobile
Up arrow icon