The Dependency Lookup control in the Saleslogix web client is what is used for the hierarchical Area/Category/Issue area on the Ticket Detail. Trying to work with that control can be a little limited. There is a way to access the control’s components however and therefor manipulate the look of the control server side. The control is a composite control that is made up a number of lookups defined at design time. Along with these lookups, there are a number of literal controls that make up other components of the composite.
Lets take a look at working with this composite control server side.
The first thing we need to do is loop through the controls within the composite control. We can do this using a foreach loop like:
foreach(Control c in dplArea.Controls)
Now the controls are flat, child controls don’t have their own children, so we don’t need to worry about recursion.
Within our loop we can check the ClientID to determine what controls they are. That works for the actual lookups but the literal controls that go with each lookup are not named anything meaningful. So for those, we need to look at the Text property of the Literal control to see what is in there. The literal control’s text property is really all that they are anyways, so by manipulating those we can change the appearance of the controls.
Lets look at code to make the Area lookup text bold and then the Area label text bold:
foreach (Control c in dplArea.Controls)
//Makes Area Lookup Text Bold
((TextBox)c).Style[“font-weight”] = “bold”;
//Makes Area Label Text Bold
if (c is Literal && ((Literal)c).Text.Contains(“id=’Area'”))
String littxt = ((Literal)c).Text;
littxt = littxt.Substring(0,(littxt.Length – 1)) + ” style=’font-weight:bold;’>”;