The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Delegates Sample (Custom Delegates) 

Download sample

This sample implements two uses of a delegate (single-cast and multicast) using the __delegate keyword.

The sample also demonstrates interoperability between a Visual C++ application and a Visual J# DLL (jsdel). The Visual J# DLL implements a basic Visual J# class (jsdel) with a custom method.

Security noteSecurity Note

This sample code is provided to illustrate a concept and should not be used in applications or Web sites, as it may not illustrate the safest coding practices. Microsoft assumes no liability for incidental or consequential damages should the sample code be used for purposes other than as intended.

Building and Running the Sample

To open the sample file in Solution Explorer

  1. Click Download Sample.

    The File Download message box appears.

  2. Click Open, and on the left column of the zip folder window, click Extract all files.

    The Extraction Wizard opens.

  3. Click Next. You can change the directory that the files will be extracted to, and then click Next again.

    Make sure that the Show extracted files check box is selected, and click Finish.

  4. Double-click the sample's .sln file.

    The sample solution is displayed in Solution Explorer. You might get a security warning that says the solution location is not trusted. Click OK to continue.

To build and run this sample using Visual Studio

  1. In Solution Explorer, right-click the Delegates solution.

  2. On the shortcut menu, click Build Solution.

  3. On the Debug menu, click Start.

When the sample is built and run, single-cast and multicast delegates are created and invoked:

  • pSCDelegate

    A single-cast delegate is created and then the bound method is invoked. The confirmation is a printed string with the value passed by the single-cast delegate.

  • pMCDelegate

    Before creating the multicast delegate, the Visual J# class (jsdel) is first instantiated. The delegate is then bound to both the Visual J# and managed class methods and invoked. The confirmation is a printed string with the value passed by the multicast delegate.

See Also

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft