¿Cómo obtengo los caracteres para la entrada en forma de contexto en un script complejo?

En algunosDe derecha a izquierda idiomas (como el árabe, persa, urdu, etc.) cada letra puede tener diferentes formas. Hay una forma aislada, una forma inicial y una forma intermedia (simplemente puede encontrarla en el Mapa de caracteres de las ventanas para cualquier fuente Unicode).

Imagine que necesita los caracteres exactos que el usuario ha ingresado en un cuadro de texto, de manera predeterminada, al convertir la Cadena a CharArray, convertirá cada carácter a forma aislada.

(porque cuando el usuario ingresa los caracteres mediante el teclado, se encuentra en forma aislada y cuando se muestra en la pantalla, se convertirá al formato adecuado; esto es solo una conjetura. Porque si crea la cadena usando códigos de caracteres exactos , generará la matriz adecuada).

Mi pregunta es, cómo podemos obtener esa forma de la cadena, la forma que se ha mostrado en el cuadro de texto.

Si no hay forma en .NET, entonces esto significa que necesito hacer mi propia clase para convertir este T_T

Respuestas a la pregunta(3)

Su respuesta a la pregunta