如何使ListView-Control表现得像ListBox-Control?

时间:2018-02-15 10:37:11

标签: c# winforms listview listbox

因为我想以不同的方式为每个元素着色,我决定使用ListView而不是ListBox,它只能同时为所有元素着色。

这意味着它应该只有一列并且相互之间插入元素,与命令listBox.Items.Insert(0, "Item")相当。

为了实现这一目标,我需要更改哪些属性?

我已经尝试将View属性设置为View.List但是只要一行中有太多元素,它就会继续将元素插入第二行,而我没有甚至创造,也无法在我看Edit Columns时找到......

1 个答案:

答案 0 :(得分:3)

您可以将 String protocol = "TLS"; // TLS / SSL boolean isImpicit = true; int timeoutInMillis = 3000; FTPSClient client = new FTPSClient(protocol, isImpicit); client.setDataTimeout(timeoutInMillis); client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out))); try { int reply; client.connect(server, port); client.login(user, pass); client.setFileType(FTP.BINARY_FILE_TYPE); client.execPBSZ(0); client.execPROT("P"); System.out.println("Connected to " + server + "."); reply = client.getReplyCode(); if (!FTPReply.isPositiveCompletion(reply)) { client.disconnect(); System.err.println("FTP server refused connection."); System.exit(1); } client.listFiles(); boolean retrieved = client.retrieveFile(Constantes.DIRECCION_FTP_PDF_FACTURAS + nombre_factura, new FileOutputStream(Constantes.DIRECCION_FTP_LOCAL_DESCARGAS + nombre_factura)); } catch (Exception e) { if (client.isConnected()) { try { client.disconnect(); } catch (IOException ex) { ex.printStackTrace(); } } System.err.println("Could not connect to server."); e.printStackTrace(); return; } finally { System.out.println("# client disconnected"); client.disconnect(); } } 设置为View并将Details设置为HeaderStyle,然后添加一列并将其大小设置为None强制要使用与-1相同宽度的列:

ListView