29.03.2010, 17:57 | #1 |
Участник
|
Свойство SaveSize игнорируется при открытии формы из кода
На дизайне формы свойство SaveSize = Yes.
Если открывать форму из AOT или посредством menu item, она открывается с правильным, сохраненным размером. Если открывать следующим образом из кода, SaveSize игнорируется. X++: static void Job13(Args _args) { Args args = new Args(formstr(Form1)); FormRun fr = new FormRun(args); ; fr.init(); fr.run(); fr.detach(); } Я что-то делаю не так? |
|
29.03.2010, 18:04 | #2 |
Axapta
|
Constructing a form from your X++ code
When you construct a form from your X++ code, you must use the system classes. Your code lines should look similar to the following X++: form = ClassFactory.FormRunClass(formstr(CustTable));
form.init();
form.run(); The idea of using this indirection is to make it possible to inherit the FormRun class and override selected methods to change the behavior of the form executor. Subsequently, you can have all forms in the system executed with the new class instead of the ordinary FormRun by supplying the inherited class in the FormRunClass() method. The system constructs all forms activated from the Application Object Tree using the xClassFactory. |
|
|
За это сообщение автора поблагодарили: Hyper (1), alex55 (1). |
29.03.2010, 18:05 | #3 |
Участник
|
Неожиданное поведение.
По-моему самый правильный способ - это через меню итем открывать, даже при использовании из кода. В вашем случае еще права доступа будут проигнорированы. |
|
29.03.2010, 18:26 | #4 |
Участник
|
Помогло
|
|
29.03.2010, 18:33 | #5 |
Участник
|
Цитата:
Для данной формы права доступа неактуальны. При использовании menu item нет возможности вызывать методы на форме. Например: X++: Args args; FormRun fr; Object o; ; args = new Args(formstr(Form1)); fr = ClassFactory.FormRunClass(args); if (formHasMethod(fr, identifierstr(parmCoolInfo))) { fr.run(); fr.wait(); if (fr.closedOk()) { o = fr; coolVariable = o.parmCoolInfo(); } |
|
29.03.2010, 19:45 | #6 |
Участник
|
Цитата:
ObjectRun menuFunction.create(Args) http://msdn.microsoft.com/en-us/library/aa612274.aspx |
|
|
За это сообщение автора поблагодарили: Hyper (1). |
29.03.2010, 19:55 | #7 |
Участник
|
|
|