Самый простой способ расширить форму с помощью свойства? - PullRequest
1 голос
/ 04 августа 2011

Я много искал, но мне ничего не помогло ... вот в чем проблема: Мне нужно дополнительное свойство, как

public int FormResult()
{
   get{ ....

Дело в том, что я звоню по формам через

Form f1 = new Forms.Form2();
f1.Show;
.....

Так что я не могу просто поместить свойство в форму, так как я мог получить к нему доступ только тогда, когда использовал

 Form2 f1 = new Forms.Form2();

Что мне нужно, это расширить весь класс Form этим свойством (или, может быть, у вас есть идея получше ...?) Сначала я подумал о нормальном расширении класса, но не смог получить доступ к Resultvariable внутри класса. Тогда я подумал, что просто создам новый класс, унаследованный от Form, и добавлю это свойство ... как обычно. Тогда я бы просто использовал этот класс во всех моих формах, и он должен работать - но здесь VS говорит мне, что у меня несогласованный доступ, и это позволяет сказать, что clsExtForm менее доступен, чем Form2.

Это выглядело так:

class clsExtForm : Form
{
    private int result;
    Public int FormResult()
    {
       Get{ return result; }
       Set{ result = value; }
    }
}

Тогда я бы использовал

    ClsExtForm f1 = new Forms.Form2();

и изменил форму 2 на

    public partial class Form2 : clsExtForm

Это дало вышеуказанную ошибку ...

Решено - все, что мне не хватало, было "public" перед "class clsExtForm", и у них был правильный уровень доступности .... извините ... рано утром здесь, в Германии :) Какие-либо причины, почему этот способ не должен быть нормальным?

Я с нетерпением жду ваших ответов! Спасибо за любую помощь!

Привет
Лоренц

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