# 11.03.2008 16:33:49 -07:00
Hi All,

I am tryong to install Custom controls. I downloaded source, compiled it, run installer on the server where I have TFS 2008 installed. Now, I can see following files in "C:\Documents and Settings\All Users\Application Data\Microsoft\Team Foundation\Work Item Tracking\Custom Controls\"
AttachmentsControl.wicc
CodePlex.WitCustomControls.dll
MultiValueControl.wicc office.dll
ScreenshotControl.wicc
WebBrowserControl.wicc

I expect to be able to select "MultiValueControl" in control type when I modify work item template in template editor. I do not see such option. I tried to export tracking item template and manually change type in xml, but it gives me an error during importing.

Did I miss any steps? Please help me.

Thank you,
Igor
# 18.03.2008 19:30:58 -07:00
I am trying to get it working as well.

What error message are you getting? It could be because it isn't compatible with the TFS Power tools.
Please refer to http://www.codeplex.com/WitCustomControls/Thread/View.aspx?ThreadId=21640

Please correct me if I am wrong but, I think it has to be installed on the Client machine. Are you running VS 2005 with SP1 or VS2008? I have issues with VS 2008. I will try to get the source-code and re-compile it with VS 2008 version of TFS assemblies.

I would prefer all these instructions are on the download site with setup packages for both VS 2005 and VS 2008. Good luck and please reply if you get it working.

Cheers,
Raj Aravinthan
# 18.03.2008 20:11:05 -07:00
I did spend some time investigating how we can incorporate the CheckBox control. But, considering the issues and troubles with install I will leave it for now. My findings are as below. Please give me your feedback if I have got it wrong. Thank you.

Deployment:

The checkbox control is deployed client side. That means all the client PCs accessing TFS needs to install the assembly files and the '.wicc' files.
Two ways to deploy it:
1. xcopy deploy - ask users to copy the required files.
On WinServer 2003 it will be;
C:\Documents and Settings\<user>\Local Settings\Application Data\Microsoft\Team Foundation\Work Item Tracking\Custom Controls
2. Create a setup package. CodePlex has 'UKVSTSWorkItemControlsSetup.msi' for VS 2005.


Requirements:
1. VS SP1 is mandatory for Client PCs with VS 2005.
2. Client PCs with VS 2008 - The Custom Control was compiled against VS 2005 assemblies therefore if client has VS 2008 it will not load the custom control assemblies.
They will get an error 'TF210004: The control could not be loaded from the assembly.'
To resolve this the Custom Control needs to be re-compiled with VS 2008 version of TFS assemblies and re-deployed to client PCs.
The source-code can be downloaded from CodePlex but, we will have get all the assemblies etc before creating a build or setup project/package.
NOTE: We will have to remove the source control bindings and I guess we will still be in trouble for not having all the associated '.dll' files!
3. Doesn't work with Team System Web Access 2005.

Known Issues:
1. Using the TFS Power Tools updated WIT cannot be uploaded with Custom Controls as it will give an error message saying ' Instance Validation error :'WorkItemCheckBox is not
a valid value for ValidControlsType.'

Solution: Use Command line tool 'witimport' instead.

How to:
I take the bug work item from MSF agile as an example.
1. Export the WIT
2. Edit the template manually (Process template Editor is of no help as it doesn't give you the Custom Controls in the 'Type' dropdown list on the layout section.
3. take Issue as an example. We have under the FIELDS node;
<FIELD name="Issue" refname="Microsoft.VSTS.Common.Issue" type="String" reportable="dimension">
<HELPTEXT>Used to highlight the bug, e.g., to mark it as an issue.</HELPTEXT>
<REQUIRED/>
<ALLOWEDVALUES>
<LISTITEM value="Yes"/>
<LISTITEM value="No"/>
</ALLOWEDVALUES>
<DEFAULT from="value" value="No"/>
</FIELD>

Under the FORM section Replace the '<Control Type="FieldControl" FieldName="Microsoft.VSTS.Common.Issue" Label="Iss&ue:" LabelPosition="Left" />' with the following:
<Control Type="WorkItemCheckBox"
FieldName="Microsoft.VSTS.Common.Issue"
Label="Iss&ue:"
LabelPosition="Left"
Checked="Yes"
Unchecked="No"
Text="(Include in issue list)"/>
4. Import the updated WIT using 'witimport'



Cheers,
Raj Aravinthan
# 10.04.2008 12:11:57 -07:00
Thanks for the post Raj. I will add a paragraph in the release section to further explain the setup process.