Редактировать заметку: я вижу, что вы проверили asp.net и mvc 2. Это решение для asp.net.
То, на что это похоже, представляет собой древовидную структуру с флажками.
Это элемент управления по умолчанию ASP.net. Чтобы получить полосы прокрутки, вы можете поместить их внутри div и установить высоту с помощью css. Аналогично, для создания самого дерева вы можете использовать CSS для его стилизации.
В фокусе Treeview находится свойство ShowCheckBoxes. Вы можете включить флажки на всех узлах, листьях, родителях и т. Д. Поэтому измените это свойство по мере необходимости. Конечно, вы можете привязать данные к древовидной структуре, если вам нужно.
<asp:TreeView ID="tv" runat="server" ShowCheckBoxes="All">
<Nodes>
<asp:TreeNode Text="New Node" Value="New Node"></asp:TreeNode>
<asp:TreeNode Text="New Node" Value="New Node">
<asp:TreeNode Text="New Node" Value="New Node">
<asp:TreeNode Text="New Node" Value="New Node"></asp:TreeNode>
<asp:TreeNode Text="New Node" Value="New Node"></asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="New Node" Value="New Node">
<asp:TreeNode Text="New Node" Value="New Node"></asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="New Node" Value="New Node"></asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="New Node" Value="New Node">
<asp:TreeNode Text="New Node" Value="New Node"></asp:TreeNode>
</asp:TreeNode>
</Nodes>
</asp:TreeView>