public string[] GetAllAttributes(IupHandle ih) { IntPtr zero = IntPtr.Zero; int numattrib = NativeIUP.IupGetAllAttributes(Handle, ref zero, 0); IntPtr[] atts = new IntPtr[numattrib]; if (numattrib == 0) { return(new string[0]); } numattrib = NativeIUP.IupGetAllAttributes(Handle, ref atts[0], numattrib); string[] res = new string[numattrib]; for (int l = 0; l < atts.Length; l++) { res[l] = UTF8ToStr(atts[l]); } return(res); }