I know. It is silly. However, let me guess what is going on here.
I think the data type string and a boolean array both are coded as a sequence of bytes. The string "ABC" viewed in hex mode is "41,42,43". And the Boolean array "True, True, False" is coded as "01,01,00". Both taking up three bytes. The type cast function transforms a the string to a Boolean array by doing basically nothing to the bytes stored in memory. But in LabVIEW we see a Boolean array that has bits instead of bytes. And if a byte is not equal to "00", the bit in the Boolean array is displayed as False. If you make a change to one of the elements in the Boolean array you cannot re-create the text by changing it back. This shou
ld then be the result of that LabVIEW writes either "00" or "01" in the position and thus erasing what was there before. Oh, well. This is just my speculation... /Mikael