Posted 19 years ago
by Ashton
-
Developer,
Schema Solutions LLC

I'm having a weird problem with CodeSnippetFolder. I tried creating a global method to cache the folder and used the following syntax:
If I use the above code, I get the following error when I call the method to get the snippet folder:
Object reference not set to an instance of an object.
at _6._7()
at _5.OnDisplayed(EventArgs e)
at ActiproSoftware.WinUICore.PopupControl.ShowPopup(Control owner, Boolean activate)
at ActiproSoftware.SyntaxEditor.IntelliPromptCodeSnippets.ShowInsertSnippetPopup(Int32 offset, String labelText, CodeSnippetFolder folder, CodeSnippetTypes type)
at myApp.menuBar_ItemClick(Object sender, EventArgs e) in c:\development\myFile.cs:line 10372
at DevComponents.DotNetBar.DotNetBarManager.AT(BaseItem 384)
at DevComponents.DotNetBar.BaseItem.RaiseClick()
at DevComponents.DotNetBar.BaseItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.PopupItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.ButtonItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.MenuPanel.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
However, if I change the method to the following it works:In the code that breaks, the CodeSnippetFolder is a valid object that contains items.
Any ideas?
Thanks,
private static CodeSnippetFolder g_Snippets;
internal static ActiproSoftware.SyntaxEditor.CodeSnippetFolder Snippets
{
get
{
if (Start.g_Snippets == null)
Start.g_Snippets = new ActiproSoftware.SyntaxEditor.CodeSnippetFolder("SQL Snippets", Start.AppPath + "\\Snippets");
return Start.g_Snippets;
}
}
Object reference not set to an instance of an object.
at _6._7()
at _5.OnDisplayed(EventArgs e)
at ActiproSoftware.WinUICore.PopupControl.ShowPopup(Control owner, Boolean activate)
at ActiproSoftware.SyntaxEditor.IntelliPromptCodeSnippets.ShowInsertSnippetPopup(Int32 offset, String labelText, CodeSnippetFolder folder, CodeSnippetTypes type)
at myApp.menuBar_ItemClick(Object sender, EventArgs e) in c:\development\myFile.cs:line 10372
at DevComponents.DotNetBar.DotNetBarManager.AT(BaseItem 384)
at DevComponents.DotNetBar.BaseItem.RaiseClick()
at DevComponents.DotNetBar.BaseItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.PopupItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.ButtonItem.InternalMouseUp(MouseEventArgs objArg)
at DevComponents.DotNetBar.MenuPanel.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
However, if I change the method to the following it works:
internal static ActiproSoftware.SyntaxEditor.CodeSnippetFolder Snippets
{
get
{
return new ActiproSoftware.SyntaxEditor.CodeSnippetFolder("SQL Snippets", Start.AppPath + "\\Snippets");
}
}
Any ideas?
Thanks,