Уже разобрался. Дело не в этом. В свойствах картинки в обозревателе проектов надо было указать Resource. Не помню имя свойства, но оно там сверху сразу. Тогда компилятор эту картиночку вшивает в исполняемый файл и она больше никуда не теряется.
В умной книжке не написано как осуществить то что мне нужно.
onCreate += delegate { Console.Write("Hello "); }; я и без тостера написал, но очень хочется, чтобы код выглядел именно так
Функция(button.Click)
С этим я разобрался.
Делается так:
Обьект.Событие += delegate
{
Метод();
};
появился другой вопрос, как передать в функцию хандлер события?
При попытке сделать так
Функция(button.Click)
я получаю сообщение
Ошибка 1 Событие "System.Windows.Controls.Primitives.ButtonBase.Click" может находиться только в левой части операции += или -=
Я не знаю во что конвертировать. Этих методов M1 M2 M3 целая куча и мне надо перевести их в ActionList (как в делфи), но только некоторые из них принимают параметры. Это неверный подход изначально, действия не должны принимать и возвращать параметры, но исправлять это никто не хочет, потому как все заняты.
я читал про params. Но методы принимают конкретное число параметров конкретного типа. Объекты они не принимают. Тип параметров я заранее не знаю, поэтому сконвертировать массив объектов в Teype arg1, Type arg2, Type arg3 и тд я не смогу.
Я это находил. Точнее даже 2 решения. Вот такое и еще другой подход, где делается обычный запрос, а потом результаты уже перестраиваются в клиенте в нужную модель. Я же хочу универсальный запрос, учитывая, что я заранее не знаю, какие поля профиля существуют.
Тут едва ли можно дать ответ абстрактно. Придется реализовать. Компилятор ругается, что в xaml.cs базовым классом является ConfigPage, а в xaml базовым элементом является Page. я ведь это написал.
Пространство имен определяется в базовом элементе <page xmlns=".....
но для этого нужен сам базовый элемент... Замкнутый круг получается. Мне надо базовым сделать ConfigPage, а его нет в пространстве имен, которое определяется внутри него.
Мне требуется добавить некоторые методы и функции в класс Page (получаем новый abstract class ConfigPage : Page). Далее я создам классы от нового класса ConfigPage. Например это будут Page1 : ConfigPage, Page2:ConfigPage и тд. Далее экземпляры этого нового класса будут сохранены в ListDictionary. Далее я хочу к ним обращаться через foreach(ConfigPage control in dictionarylist.Values) чтобы получить доступ к новым методам, которых нет в Page но есть в ConfigPage. Но я не могу создать классы Page1, Page2 и тд и унаследовать их от ConfigPage, потому что компилятор выдает ошибку
Ошибка 2 Частичные объявления "ConfigWPF.GUI.controls.crypto.CryptoProSetting" не должны определять различные базовые классы
Причину этой ошибки я написал выше.
Как это исправить я не знаю, поэтому я решил добавить интерфейс IConfigPage и Page1, Page2 и тд уже наследовать от него
Page1 : Page, IConfigPage
Но когда я обращаюсь к этим Page1 и Page2 через foreach(Page control in dictionarylist.Values)
у меня уже нет доступа к методам, которые я определил в интерфейсе.
Я не знаю как описать подробнее, по наводящим вопросам могу объяснить.
спасибо, но появилась еще проблема. Если отправить не "echo 123", а "echo йцукен", то выходит ошибка
Traceback (most recent call last):
File "script1.py", line 3, in
out = out.decode('Utf-8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xeb in position 0: invalid
continuation byte