Error on Dashboard > Test Application

Any advice thoughts here appreciated. Getting error as it seems that I cannot grab the csm during runtime or I am doing something wrong here.
Below code compliles fine in customze tracker view, but deploy dashboard > test application errors out on attempting to complie.

On test application:
--------compile errors------------
Error: CS1061 - line 149 (148) - ‘Ice.UI.App.dsbVendXRef.V_qSupplier4DB_1ViewDetailPanel1.V_qSupplier4DB_1ViewDetailPanel1CodeBehind’ does not contain a definition for ‘csm’ and no extension method ‘csm’ accepting a first argument of type ‘Ice.UI.App.dsbVendXRef.V_qSupplier4DB_1ViewDetailPanel1.V_qSupplier4DB_1ViewDetailPanel1CodeBehind’ could be found (are you missing a using directive or an assembly reference?)

** Compile Failed. **

// **************************************************
// Custom code for 2f9f0ffe-3401-4764-8339-bd8d07fdf7ce
// Created: 6/4/2020 10:52:55 AM
// **************************************************
using System;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Windows.Forms;
using Ice.BO;
using Ice.UI;
using Ice.Lib;
using Ice.Adapters;
using Ice.Lib.Customization;
using Ice.Lib.ExtendedProps;
using Ice.Lib.Framework;
using Ice.Lib.Searches;
using Ice.UI.FormFunctions;
using System.Reflection;

public static class Script
{

	private static EpiTextBox txtVendor;

	// ** Wizard Insert Location - Do Not Remove 'Begin/End Wizard Added Module Level Variables' Comments! **
	// Begin Wizard Added Module Level Variables **

	// End Wizard Added Module Level Variables **

	// Add Custom Module Level Variables Here **

	public static void InitializeCustomCode()
	{
		// ** Wizard Insert Location - Do not delete 'Begin/End Wizard Added Variable Initialization' lines **
		// Begin Wizard Added Variable Initialization

		// End Wizard Added Variable Initialization
		txtVendor = (EpiTextBox)Script.csm.GetNativeControlReference("5286af6d-b5e0-4434-a70c-35d11e974889");

		// Begin Wizard Added Custom Method Calls

		Script.btnRefresh.Click += new System.EventHandler(Script.btnRefresh_Click);
		// End Wizard Added Custom Method Calls
		Script.txtVendor.Leave += new System.EventHandler(Script.txtVendor_Leave);
		Script.txtVendor.Enter += new System.EventHandler(Script.txtVendor_Enter);
	}

    	public static void DestroyCustomCode()
	{
		// ** Wizard Insert Location - Do not delete 'Begin/End Wizard Added Object Disposal' lines **
		// Begin Wizard Added Object Disposal

		Script.btnRefresh.Click -= new System.EventHandler(Script.btnRefresh_Click);
		// End Wizard Added Object Disposal

		// Begin Custom Code Disposal

		// End Custom Code Disposal
		Script.txtVendor.Leave -= new System.EventHandler(Script.txtVendor_Leave);
		Script.txtVendor.Enter -= new System.EventHandler(Script.txtVendor_Enter);
	}

	private static void btnRefresh_Click(object sender, System.EventArgs args)
		{
			// ** Place Event Handling Code Here **
			// Plan to have button to refresh grids below here
    }

	private static void txtVendor_Leave(object sender, System.EventArgs args)	
	{
		MessageBox.Show("txtVendor_Name_Leave"); //For Testing.  Would like to refresh query grid upon leaving this starts with box.
	}

	private static void txtVendor_Enter(object sender, System.EventArgs args)
	{
		MessageBox.Show("txtVendor_Name_Enter"); //For Testing.
	}

	// txtVendor GUID: 5286af6d-b5e0-4434-a70c-35d11e974889
	
}

Remove the vendor filter from the tracker and add you own in the customized tracker view. Then you don’t need to try to reference a system control. Also referencing the “system” controls that are generated by checking a the prompt box when you create the tracker view is risky. I’ve had their GUIDs change on one of the regenerate processes.