devxlogo

Transform a variable into a Property

Transform a variable into a Property

Thanks to Visual Studio.NET macros, it is quite simple to automate the task of transforming a Public field into a Property with the same name that accesses a private field of the same type.

Press Alt-F11 (or invoke the Macro IDE from the Tools|Macros submenu, select one macro module in the left-most treeview, and double-click on it to bring up the corresponding code module. Now cut and paste the following procedure:

Sub MorphVariableIntoProperty()    DTE.ActiveDocument.Selection.StartOfLine _        (vsStartOfLineOptions.vsStartOfLineOptionsFirstText)    DTE.ActiveDocument.Selection.WordRight(True)    DTE.ActiveDocument.Selection.Delete()    DTE.ActiveDocument.Selection.Text = "Private m_"    DTE.ActiveDocument.Selection.EndOfLine(True)    DTE.ActiveDocument.Selection.Copy()    DTE.ActiveDocument.Selection.EndOfLine()    DTE.ActiveDocument.Selection.NewLine(2)    DTE.ActiveDocument.Selection.Text = "Public Property "    DTE.ActiveDocument.Selection.Paste()    DTE.ActiveDocument.Selection.NewLine()    DTE.ActiveDocument.Selection.LineUp(False, 2)    DTE.ActiveDocument.Selection.StartOfLine _        (vsStartOfLineOptions.vsStartOfLineOptionsFirstText)    DTE.ActiveDocument.Selection.WordRight(False, 2)    DTE.ActiveDocument.Selection.WordRight(True)    DTE.ActiveDocument.Selection.Copy()    DTE.ActiveDocument.Selection.LineDown(False, 2)    DTE.ActiveDocument.Selection.Indent(2)    DTE.ActiveDocument.Selection.Text = "Return m_"    DTE.ActiveDocument.Selection.Paste()    DTE.ActiveDocument.Selection.LineDown(False, 3)    DTE.ActiveDocument.Selection.Indent(2)    DTE.ActiveDocument.Selection.Text = "m_"    DTE.ActiveDocument.Selection.Paste()    DTE.ActiveDocument.Selection.Text = "= Value"End Sub

Next, bring up the Tools-Options dialog box, go to Keyboard page, and assign a shortcut key combination to the Morph

See also  Essential Measures for Safeguarding Your Digital Data
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist