30/9/08

Añadir valor nulo en un comboBox asp.net (dropdownlist)

Hay que asignar a true la propiedad AppendDataBoundsItems.


this.comboLocalidad.AppendDataBoundsItems = true;
this.comboLocalidad.Items.Add(new ListItem("Sin asignar", "0"));

El valor 0 tendrá que ser tratado al grabar como nulo.

19/9/08

Curioso juego de programación

http://www.gameroo.nl/games/light-bot

palabras clave:
juego programación interesante aprendizaje chorrada

16/9/08

Para modificar o eliminar un registro de un GridView de asp. net.

Palabras clave:
GridView, Posición, Posicionar, modificar, eliminar, RowCommand, DataKeys, Grid, Rejilla.

// e.CommandArgument.ToString(). Nos devuelve una cadena con la posición en el grid en la que se ha pulsado el botón.
// Para obtener la clave primaria de la fila pulsada hemos de definir en el GridView en su propiedad “DataKeyNames” los nombres de los campos que forman la clave primaria a mano antes de empezar.
DataKey dk = this.GridView1.DataKeys[Int32.Parse(e.CommandArgument.ToString())];
// El dk obtiene la lista de valores para acceder al segundo se pone el [1]
this.Title = dk.Values[1].ToString();

Una vez obtenida la clave primaria ya se puede obtener el objeto a modificar.

14/7/08

Tamaño de la barra de windows

La barra mide 22 puntos.
si a 768 ( de 1024 x 768) le restamos 22 tenemos que para aplicaciones podemos tener:

746 puntos de alto.

19/6/08

Creación de tabla en oracle


CREATE table "S" (
"A" NUMBER(5,5) NOT NULL,
"C" VARCHAR2(4000),
constraint "S_PK" primary key ("A")
)
/

CREATE sequence "S_SEQ"
/

CREATE trigger "BI_S"
before insert on "S"
for each row
begin
select "S_SEQ".nextval into :NEW.A from dual;
end;
/

ALTER TABLE "S" ADD CONSTRAINT "S_FK"
FOREIGN KEY ("C")
REFERENCES "TABLA1" ("ID")

/

23/4/08

Netbeans jsf oracle + Primera inserción que funciona

Necesita un messageGroup1

int id = 31;
String nomb = "Treinta y uno";
Connection con = null;
try {
InitialContext ic = new InitialContext();
//en esta parte es donde ponemos el Nombre
//de JNDI para que traiga el datasource
DataSource ds = (DataSource) ic.lookup("java:comp/env/jdbc/HR_Oracle");
con = ds.getConnection();
Statement st = con.createStatement();
try{
String com = "insert into TABLA1(id,nomb) values ("
+ Integer.toString(id)
+ ",'"
+ nomb
+ "')";
info(com);
int executeUpdate = st.executeUpdate(com);
info(Integer.toString(executeUpdate));
}catch(SQLException ex){
error(ex.getMessage());
}
//el resultSet es el encargado de traer los datos de la consulta
ResultSet rs = st.executeQuery("select * from TABLA1");
while (rs.next()) {
info(" " + rs.getString(1) + " " + rs.getString(2));
}
} catch (SQLException ex) {
error(ex.getMessage());
} catch (Exception exx) {
error(exx.getMessage());
}

4/3/08

Fila actual de un BindingSource

Actualización: Parece que esto funcionaría y compacta el código.

return (this.BaseDeDatosBS.Current as DataRowView).Row as DS.BaseDeDatosRow;
// Si no hay Current devolvería un null.


Sirve para acceder al elemento actual de un binding source con el tipo de fila adecuado.

public DS.JuzgadoRow JuzgadoActual {
get {
DS.JuzgadoRow result = null;
if (this.JuzgadoBs.Current != null) {
DataRowView drw = this.JuzgadoBs.Current as DataRowView;
result = drw.Row as DS.JuzgadoRow;
}
return result;
}
}

28/11/07

Text de solo números

Debería ser con change. De hecho falla si le pegamos letras pero es lo que hay.
Se permiten números y carateres de control (si no se permiten los caracteres de control el borrar falla)


private void textAno_KeyPress(object sender, KeyPressEventArgs e) {
e.Handled = !(Char.IsNumber(e.KeyChar) || Char.IsControl(e.KeyChar));
}


21/11/07

Campo calculado en un DataTable de un DataSet .net

Program.dm.ds.Proc.Columns.Add("TipoProcNomb", typeof(string), "Parent(FK_TipoProc_Proc).nomb");

(habría que explicarlo más)

17/10/07

Databinding ComboBox C#


ComboBox.DataSource = Program.dm.TipoProcBindingSource; //BindingSource a mostrar
ComboBox.DisplayMember = "nomb"; // Campo nombre
ComboBox.ValueMember = "id"; // Campo valor
ComboBox.DataBindings.Add( // enlace con el campo donde se guarda el valor
new Binding("SelectedValue", // La propiedad de SelectedValue ( no value)
Program.dm.procBindingSource, // Bindingsource de la tabla en la que grabamos el valor
"idTipoProc" // nombre del campo en el que guardamos el valor
));

4/10/07

Comprobar permisos al ejecutar aplicación .net

Sacado de campusMVP

private static bool CheckFullTrust()
{
try
{
// Demandar Full Trust
new PermissionSet(PermissionState.Unrestricted).Demand();
return true;
}
catch (SecurityException)
{
try
{
// No estamos en Full Trust, se lo contamos al usuario
MessageBox.Show("La aplicación necesita Full Trust");
}
catch (SecurityException)
{
// La aplicación no tiene permisos mostrar mensajes... :(
//Logeamos lo ocurrido
}
}
return false;
}

27/7/07

Generar avisos de compilación en C#

Sirve para poner Wanings al darle a compilar por ejemplo para indicar cosas que quedan por hacer o pruebas en código.


private void grabacionCrear() {
#warning grabacionCrear sin hacer
}

19/7/07

Hacer un DataGridView de solo lectura.


ReadOnly = true;
AllowUserToAddRows = false;
AllowUserToDeleteRows = false;
SelectionMode = DataGridViewSelectionMode.FullRowSelect;

5/7/07

Textbox con solo números

(Copiado de www.buayacorp.com)
public Form1()
{
InitializeComponent();

textBox1.KeyPress += new KeyPressEventHandler(textBox1_KeyPress);
}
void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
// Permitir sólo las teclas de control o números
if (!(char.IsControl(e.KeyChar) || char.IsDigit(e.KeyChar)))
{
e.Handled = true;
}
}

7/6/07

Acceder a un fichero en el servidor desde página ASP

DataSet dataset = new DataSet();
dataset.ReadXml ( Server.MapPath("fichero.xml") );

Esto accedería a "fichero.xml" en donde se encuentre instalada la aplicacion.

12/4/07

String.format en Java


Para fechas:
String.format("%1$te/%1$tm/%1$tY",[variable calendar]);
Para números enteros:
String.format("%1$d",[variable entera]);
Para double / float:
String.format("%1$.2f",[variable double o float]); // saca el nº con 2 decimales

21/3/07

HTML: Label más text en HTML

Para que quede bien el típico texto con un input box en html, es decir, el label sobre el input y alineado a la izquierda con el mismo.
(ver el código de la página)

Buscar