Although you can't directly apply a change to the template of a Text Field ("CText") after it has been set in Mi-Forms Designer, you can employ a workaround depending upon your requirements.

One workaround is to set up the CText field to handle all possible solutions. For example, if you can start with a template that allows both alpha and numeric characters. Next implement a check on the CText value depending upon what is selected in a separate field, such as a picklist or check box group.


An example of this implementation is below. Using AfterSetData event handlers on a Picklist and CText that checks the value of the CText field against what is selected in the Picklist, either "Alpha" or "Numeric". Also included is a Dynamic Label that ouputs workflow messages to the form.


 

    <MiCode(ControlScriptEventType.AfterSetData, "TextField")> _ 
    Public Sub Ctl_TextField_AfterSetData(ByVal e As AfterSetDataEventArgs)
    
		CheckCTextValue
    End Sub

    <MiCode(ControlScriptEventType.AfterSetData, "Picklist")> _ 
    Public Sub Ctl_Picklist_AfterSetData(ByVal e As AfterSetDataEventArgs)
		
		CheckCTextValue
    End Sub

	Sub CheckCTextValue
		
		Dim picklist = Me._Picklist.Value
		Dim ctext = Me._TextField.Value
		Dim message As String
		
		If String.Equals(ctext,String.Empty) Then
		
			message = "The CText Value is Empty"		
		
		ElseIf String.Equals(picklist,String.Empty) Then
		
			message = "The Picklist Value is Empty"
		Else
		
			If String.Equals("Alpha", picklist) Then

				If Regex.IsMatch(ctext, "^[a-zA-Z]+$") Then
					message = "You chose 'Alpha' and the CText value contains only alpha values"					
				Else
					message = "You chose 'Alpha' and the CText value contains non-alpha values"
				End If

			ElseIf String.Equals("Numeric", picklist) Then
	
				If Regex.IsMatch(ctext, "^[0-9]+$") Then
					message = "You choose 'Numeric' and the CText value contains only numeric values"					
				Else
					message = "You choose 'Numeric' and the CText value contains non-numeric values"
				End If
				
			End If
		
		End If
	
		Me._DynamicLabel.Value = message
	
	End Sub

 

A copy of the MFD exemplifying this solution is attached to be downloaded.