¡Saludos!
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;Cita de: RevolucionVegana en 10 Abril 2017, 11:35 AMme da error en int rangoUser = (int) rd["rango"];
Cita de: RevolucionVegana en 9 Abril 2017, 17:07 PMdentro de la clase he creado el método ConectarYa y he puesto que no retorne nada, es correcto o tiene que retornar algo?
Cita de: RevolucionVegana en 9 Abril 2017, 17:07 PMme gustaría saber si hace falta que esa clase retorne algo o como va la cosa
Cita de: RevolucionVegana en 9 Abril 2017, 17:07 PMHabía pensado en poner return HacerConexion.Open() pero no sabría de que tipo es el retorno
Cita de: RevolucionVegana en 9 Abril 2017, 17:07 PMhe creado una clase para hacer la conexión a la base de datos y poder reutilizarla cuantas veces quiera
Cita de: RevolucionVegana en 9 Abril 2017, 17:07 PMclass ConexionDBCita de: RevolucionVegana en 9 Abril 2017, 17:07 PMpublic void ConectarYa()#region " usings "
using System.Diagnostics;
using MySql.Data.MySqlClient;
#endregion
namespace MySqlUtils {
/// <summary>
/// Contains helper methods for a <c>MySQL</c> database.
/// </summary>
public sealed class DatabaseHelper {
#region " Constructors "
[DebuggerNonUserCode()]
private DatabaseHelper() { }
#endregion
#region " Public Methods "
/// ----------------------------------------------------------------------------------------------------
/// <summary>
/// Establishes a connection to a <c>MySQL</c> Server database using the specified connection string.
/// </summary>
/// ----------------------------------------------------------------------------------------------------
/// <example> This is a code example.
/// <code>
/// using (MySqlConnection connection = GetConnection("server=localhost; userid=x; password=x; database=x")) {
/// // ...
/// }
/// </code>
/// </example>
/// ----------------------------------------------------------------------------------------------------
/// <param name="connectionString">
/// The connection string used to open the <c>MySQL</c> database.
/// </param>
/// ----------------------------------------------------------------------------------------------------
/// <returns>
/// A <see cref="MySqlConnection"/> instance that represents the connection established with the <see cref="MySQL"/> database.
/// </returns>
/// ----------------------------------------------------------------------------------------------------
[DebuggerStepThrough()]
public static MySqlConnection GetConnection(string connectionString) {
MySqlConnection connection = new MySqlConnection(connectionString);
connection.Open();
return connection;
}
#endregion
}
}MySqlConnection db = MySqlUtil.DatabaseHelper.GetConnection("MySQL query");Cita de: bybaal en 9 Abril 2017, 01:15 AMRealmente lo que necesitamos es que se oculten las filas que no coinciden con lo buscado y que la búsqueda sea al escribir en el TextBox.
Public NotInheritable Class Form1 : Inherits Form
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
Me.TriggerFindText(DirectCast(sender, TextBox), Me.DataGridView1)
End Sub
Private Sub TriggerFindText(ByVal tb As TextBox, ByVal dgv As DataGridView)
' Cuando se dispara el evento TextBox.TextChanged, guardamos el texto actual en una variable,
' esperamos 300-500 ms approx. y verificamos si el texto sigue siendo el mismo o ha cambiado.
' De esta manera evitamos realizar búsquedas indeseadas (términos de búsqueda incompletos) mientras el usuario está escribiendo.
' Util también si tenemos miles de filas en el datagridview, para evitar bloqueos en el thread de la UI.
' Como es evidente, esta metodología está pensada para una búsqueda en "tiempo real";
' Si prefieres iniciar la búsqueda solamente cuando se presione la tecla "Enter" entonces esta metodología no tienes por que usarla...
Dim t As New Task(
Sub()
Dim oldText As String = tb.Text
Dim newText As String
Thread.Sleep(400)
newText = tb.Text
If String.IsNullOrEmpty(newText) Then
ShowAllRowsInDataGridView(dgv)
ElseIf (oldText = newText) Then
FindTextInDataGridView(dgv, tb.Text, StringComparison.OrdinalIgnoreCase)
Else ' (oldText <> newText)
' El texto ha cambiado, así que no hacemos nada.
End If
End Sub)
t.Start()
End Sub
Friend Shared Sub ShowAllRowsInDataGridView(ByVal dgv As DataGridView)
If (dgv.InvokeRequired) Then
dgv.Invoke(New Action(Sub() ShowAllRowsInDataGridView(dgv)))
End If
dgv.SuspendLayout()
For Each row As DataGridViewRow In dgv.Rows
If Not (row.IsNewRow) Then
row.Visible = True
End If
Next row
dgv.ResumeLayout(performLayout:=True)
End Sub
Friend Shared Sub FindTextInDataGridView(ByVal dgv As DataGridView, ByVal str As String, ByVal stringComparison As StringComparison)
If (dgv.InvokeRequired) Then
dgv.Invoke(New Action(Sub() FindTextInDataGridView(dgv, str, stringComparison)))
End If
Dim cellContainsFunc As Func(Of DataGridViewCell, String, Boolean) =
Function(ByVal cell As DataGridViewCell, s As String)
If (cell.Value IsNot Nothing) Then
Return (cell.Value.ToString().IndexOf(s, stringComparison) <> -1)
Else
Return False
End If
End Function
Dim indices As IEnumerable(Of Integer) =
(From row As DataGridViewRow In dgv.Rows
Where row.Cells.Cast(Of DataGridViewCell).Any(Function(x As DataGridViewCell) cellContainsFunc(x, str))
Select row.Index)
dgv.SuspendLayout()
dgv.ClearSelection()
For Each row As DataGridViewRow In dgv.Rows
If Not (row.IsNewRow) Then
row.Visible = indices.Contains(row.Index)
End If
Next row
dgv.ResumeLayout(performLayout:=True)
End Sub
End ClassCita de: aspiazu en 8 Abril 2017, 11:09 AMcomo puedo hacer que busque png y jpg? y lo mismo con exe y lnk?
DirectoryInfo dir = new DirectoryInfo(@"C:\Directory\");
IEnumerable<FileInfo> files =
from file in dir.EnumerateFiles("*.*", SearchOption.AllDirectories)
where new string[] { ".png", ".jpg" }.Contains(file.Extension, StringComparer.OrdinalIgnoreCase)
select file;
foreach (FileInfo file in files) {
Console.WriteLine(file.FullName);
}DirectoryInfo dir = new DirectoryInfo(@"C:\Directory\");
FileInfo[] files =
Array.FindAll(dir.GetFiles("*.*", SearchOption.AllDirectories),
file => new string[] { ".png",".jpg" }.Contains(file.Extension, StringComparer.OrdinalIgnoreCase));
foreach (FileInfo file in files) {
Console.WriteLine(file.FullName);
}Cita de: LeandroA en 7 Abril 2017, 07:07 AMsupongo que hay una forma mas profesional de hacer una desinstalacion desatendida.
"unins000.exe" /silentCita de: LeandroA"C:\ProgramData\Package Cache\{246dcb72-b18c-4ab9-9de9-8a996296b01d}\vcredist_x86.exe" /uninstall
"vcredist_x86.exe" /uninstall /quiet"setup.msi" /uninstall /quiet"setup.msi" /?
Cita de: LeandroAMsiExec.exe /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}
MsiExec.exe /quiet /X {1D8E6291-B0D5-35EC-8441-6616F567A0F7}Cita de: LeandroAC:\Program Files (x86)\InstallShield Installation Information\{9D3D8C60-A5EF-4123-B2B9-172095903AB}\Install.exe -uninst -l0xA
Cita de: LeandroA en 8 Abril 2017, 08:07 AMNo se porque movieron el tema a este foro si era de programacion no buco un progama de terceros