Re[3]: XP vs S2003: The object is currently in use elsewhere
От: _FRED_ Черногория
Дата: 01.04.06 10:59
Оценка:
Здравствуйте, mrix, Вы писали:

M>[InvalidOperationException]: The object is currently in use elsewhere.
M>at System.Drawing.Image.get_Width() 
M>at System.Drawing.Image.get_Size() 
M>at DevExpress.XtraBars.ViewInfo.BarLinkViewInfo.get_GlyphSize() 
M>at DevExpress.XtraBars.ViewInfo.BarLinkViewInfo.CalcLinkHorizontalCalptionGlyphWidth(Graphics g, Object sourceObject) 
M>at DevExpress.XtraBars.ViewInfo.BarLinkViewInfo.CalcLinkHorizontalSize(Graphics g, Object sourceObject) 
M>at DevExpress.XtraBars.ViewInfo.BarCustomContainerLinkViewInfo.CalcLinkHorizontalSize(Graphics g, Object sourceObject) 
M>at DevExpress.XtraBars.ViewInfo.BarLinkViewInfo.CalcLinkSize(Graphics g, Object sourceObject) 
M>at DevExpress.XtraBars.BarItemLink.CalcLinkSize(Graphics g, Object sourceObject) 
M>at DevExpress.XtraBars.ViewInfo.BarControlViewInfo.CalcLinkSize(BarItemLink link, Graphics g, Object sourceObject) 
M>at DevExpress.XtraBars.ViewInfo.BarControlViewInfo.PreCalcMultiLineSize(Graphics g, Object sourceObject, Int32 AMaxBarWidth, Int32& ARestWidth) 
M>at DevExpress.XtraBars.ViewInfo.DockedBarControlViewInfo.PreCalcMultiLineSize(Graphics g, Object sourceObject, Int32 AMaxBarWidth, Int32& ARestWidth) 
M>at DevExpress.XtraBars.ViewInfo.BarControlViewInfo.PreCalcBarDrawInfo(Graphics g, Object sourceObject, Int32 width) 
M>at DevExpress.XtraBars.ViewInfo.BarControlViewInfo.CalcBarSize(Graphics g, Object sourceObject, Int32 width, Int32 maxHeight) 
M>at DevExpress.XtraBars.Controls.CustomControl.CalcSize(Int32 width, Int32 maxHeight) 
M>at DevExpress.XtraBars.Controls.CustomControl.CalcSize(Int32 width) 
M>at DevExpress.XtraBars.BarDockControl.CalcBarMaxOffsets(DockRow row, Int32 restWidth) 
M>at DevExpress.XtraBars.BarDockControl.MakeLayout(DockRow row, Point& lastLocation, Int32 rowIndent, Int32 rowObjectIndent, Int32& totalHeight, Int32& totalShrinkableHeight) 
M>at DevExpress.XtraBars.BarDockControl.DoLayout() 
M>at DevExpress.XtraBars.BarDockControl.CheckSize() 
M>at DevExpress.XtraBars.BarDockControl.BarDockChanged() 
M>at DevExpress.XtraBars.BarDockControl.EndUpdate() 
M>at DevExpress.XtraBars.BarManager.EndUpdate() 
M>at DevExpress.XtraBars.Utils.BarMdiHelper.DoCheckMdi(Form activeForm, Boolean force) 
M>at DevExpress.XtraBars.BarManager.OnFormMdiChildActivate(Object sender, EventArgs e) 
M>at System.Windows.Forms.Form.OnMdiChildActivate(EventArgs e) 
M>at System.Windows.Forms.Form.ActivateMdiChild(Form form) 
M>at System.Windows.Forms.Form.WmMdiActivate(Message& m) 
M>at System.Windows.Forms.Form.WndProc(Message& m) 
M>at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m) 
M>at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m) 
M>at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Потоки, как видно, здесь не при чём.
Добавь в код главной Mdi-формы:
  public partial class MyMdiForm : Form
  {
    // …

    protected override void OnMdiChildActivate(EventArgs e) {
      try {
        base.OnMdiChildActivate(e);
      } catch(InvalidOperationException) { // FIX: … описание проблемы
      }//try
    }

    // …
  }

А потом сообщи об ошибке разработчикам DevExpress.XtraBars (и стек-трейс привести не забудь ;о)) и жди фикса или предложения по обходу проблемы.
Help will always be given at Hogwarts to those who ask for it.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.