C #: класс для использования с объектом - PullRequest
2 голосов
/ 28 ноября 2010

Как я могу создать класс (в DLL), который используется с конкретным объектом?Как, например, класс, который Bitmaps вызывает для выполнения определенных задач.например,

Растровое изображение bmp = новое растровое изображение;
bmp.ThingToDo ():

Ответы [ 2 ]

7 голосов
/ 28 ноября 2010

Взгляните на Методы расширения .

Вы можете добавить свой метод в класс Bitmap следующим образом:

public static class CustomExtension
{
     public static void ThingToDo(this Bitmap bitmap)
     {
         // add your functionality here and use bitmap
     }
}

Удачи!

1 голос
/ 28 ноября 2010

Вот пример метода расширения, включающего класс и пространство имен

using System.Runtime.CompilerServices;

namespace Extensions
{
    public static class BitmapExtensions
    {
        [Extension()]
        public static void MakeMyImageCool(Bitmap img)
        {
            //'# do something with your image here.
        }
    }
}

А потом назвать это

Bitmap img = MySourceImage;
img.MakeMyImageCool();

Обратите внимание, что, хотя в методе есть запрос параметра, вы не передаете параметр в вызове. Это потому, что метод расширения уже использует «img» в качестве параметра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...