Crear TreeView con nodos y casillas de verificación

He creado TreeView así:

TreeView=CreateWindowEx(0, WC_TREEVIEW, TEXT("Tree View"), WS_VISIBLE | WS_CHILD, 0, 0, 200, 500, hwnd, (HMENU)ID_TREE_VIEW, GetModuleHandle(NULL), NULL);

Ahora agregué un elemento como se muestra eneste sitio web.

Todo está bien, pero después de horas y horas de buscar en Google todavía no encontré respuesta a estas preguntas:

¿Cómo agregar subelementos (nodos)?

¿Cómo agregar una casilla de verificación en cada elemento (cómo determinar si la casilla de verificación especificada está marcada)?

Respuestas a la pregunta(1)

Su respuesta a la pregunta