RE:Crear un control Line personalizado
Miguel, cuando creas un control OCX o control de Usuario, siempre las propiedades terminan siendo en modo de ejecuciòn las del control y no las de sus controles contenidos.
Es decir, cuando creas un control que simula una linea, el control Line se va a manejar dentro del control de Usuario, por código a través del control de Usuario. NO hay forma que accedas directamente a sus propiedades, sino a través de las propiedades del control de usuario.
En tu caso, si al desplegar el control y dimensionarlo, vos querés que muestre una linea, pues entonces vas a tener que adecuar el control a las propiedades del control Line contenido, modificando su propiedad Height y Width de manera tal que el control asuma las mismas medidas que el control Line contenido.
En realidad no te conviene utilizar un control contenido como Line, sino directamente la API DrawEdge que es la que se encarga de dibujar lineas rectas, Raiser , Bump, etc.
Encontrarás en AllApi.net algunos ejemplos de esta Api que es muy sencilla de manejar, y vas a dibujar directamente sobre el control, pudiendo poner inclusive lineas diagonales como querés hacer.